zoukankan      html  css  js  c++  java
  • ASP.NET初识3

    1、用户控件
      以ascx作为拓展名,派生自System.Web.UI.UserControl类
      以<% @Control %>指令开始
      不能直接请求ascx文件,用户控件文件必须宿主到ASP.NET Web页面中
      用户控件中没有html、body或form元素
    2、使用用户控件
      <%@ Register Src="~/Registration.ascx" TagName="Registration" TagPrefix="uc1" %>
      TagPrefix:指定与用户控件关联的命名空间
      TagName:指定在ASP.NET Web页面中使用的用户控件的名字,可以指定任何字符串
      Src:指定用户控件的虚拟路径
      VS默认生成的TagPrefix以uc开头,TagName则直接使用用户控件的文件名
    3、在web.config中注册用户控件(用户控件不能与宿主控件的Web页面位于同一个文件夹下)
      <configuration>
        <system.web>
          <pages>
            <controls>
              <add tagPrefix="myUserControl" tagName="registration" src="~/UserControl/Registration.ascx" />
            </controls>
          </pages>
        </system.web>
      </configuration>
      使用时:用如下代码声明用户控件
      <myUserControl:registration ID="regcontrol" runat="server" />
    4、动态加载用户控件
      实现步骤:
        在Page.Load事件中加载用户控件,以便于用户控件能够恢复状态且postback事件
        使用容器控件和PlaceHolder控件来宿主用户控件,使用户控件能够显示在正确的位置
        当需要调用Page.FindControl方法查找用户控件时,可以为用户控件指定一个ID值属性以便于获取对用户控件的调用
        加载用户控件的方法是Page.LoadControl
    5、调用自定义属性和事件,需要对用户控件进行类型转换
      转换之前,在页面声明区使用<%@Reference   %>语法来引用用户控件
    6、动态绘图(GDI+绘图)
      基本步骤
      1、在内存中创建一个Bitmap位图对象,所有的绘图将在该位图上操作
      2、为上一步创建的Bitmap对象创建一个Graphics上下文对象,以便于使用System.Drawing.Graphics的属性和方法
      3、使用Graphics对象的方法来完成绘图,可以绘制图形、填充图像或者是从一个已经存在的文件中复制图像
      4、调用Response.OutputStream将图像数据以二进制格式写入浏览器
    7、基本绘图
      System.Drawing:该命名空间中定义了许多基本绘图元素,包括Pens、Brushes和Bitmaps
      System.Drawing2D:该命名空间提供高级的二维和矢量图形功能,比如GraphicsPath类
      System.Drawing.Imageing:命名空间提供高级GDI+图形处理功能,包括ImageFormat类
      System.Drawing.Text:该命名空间提供了高级的GDI+排版功能,比如文字排列方式
    8、无缩放的图像绘制
    9、输出PNG格式图像时,要先将PNG格式的图片保存到MemoryStream(可来回定位的流)流中  
        Response.ContentType = "image/png";
            MemoryStream msm = new MemoryStream();
            thumbnailImage.Save(msm, System.Drawing.Imaging.ImageFormat.Png);
            msm.WriteTo(Response.OutputStream);
            thumbnailImage.Dispose();
            msm.Dispose();
    10、速度和质量之间的优化
      Graphics对象有一个SmoothingMode的枚举属性







  • 相关阅读:
    SQL之mysql常用操作语句(入门级)
    总结了一些指针易出错的常见问题(七)
    C++之类和对象课后习题1
    SQL之50个常用的SQL语句
    SQL之经典SQL语句大全
    C语言之计算字符串最后一个单词的长度,单词以空格隔开
    spring之HttpInvoker
    Java之解压流(ZipInputStream)
    jetty之嵌入式开发
    java之压缩流(ZipOutputStream)
  • 原文地址:https://www.cnblogs.com/changweihua/p/2086466.html
Copyright © 2011-2022 走看看