• 自定义控件快速入门


    下面是一个自定义控件的demo : 可设置默认值的的文本框控件。

    1.新建类库CustomerControl , 添加引用system.web.UI 和system.web.UI.WebControls。

      System.Web.UI: 包含ASP.NET服务器控件基本的类,Control类位于该命名空间下。

      System.Web.UI.WebControls: 包含在页面上创建ASP.NET服务端控件的类,常用的Button、TextBox位于该命名空间下。

    2.添加类 命名为DefaultTextBox,并继承WebControl;

    3. 添加属性 DefaultValue ;将值保存到ViewState中防止回发时数据丢失。

       public string DefaultValue
            {
                get
                {
                    object obj = ViewState["defaultValue"];
                    return obj == null ? string.Empty : Convert.ToString(obj);
                }
                set
                {
                    ViewState["defaultValue"] = value;
                }
            }

    4.重写CreateChildControls方法用于添加自己的控件;

      protected override void CreateChildControls()        

       {          

             TextBox txt = new TextBox();         

              txt.Text = DefaultValue;

           txt.Style.Add(HtmlTextWriterStyle.Color,"gray");// 设置字体为灰色

                  this.Controls.Add(txt);

                   base.CreateChildControls();    

         }

    5.ok,搞定了。编译项目,生成CustomerControl.dll。

    6.网站添加引用CustomerControl.dll, 向你的网页注册该用户控件:<%@ Register Namespace="CustomControl" Assembly="CustomControl" TagPrefix="txt" %>;之后就可以像用微软的服务端控件一样了。

     <txt:DefaultTextBox runat="server" DefaultValue="百度一下">
     </txt:DefaultTextBox>

  • 相关阅读:
    Git Bash 下操作文件及文件夹命令
    python django -2 ORM模型
    python django -1
    redis python交互和实际例子
    MongoDB API和python操作
    python mysql 封装
    fabric 自动化部署
    linux 开机自启
    linux shell习题训练
    linux grep sed awk
  • 原文地址:https://www.cnblogs.com/qlbk/p/3000890.html
Copyright © 2020-2023  润新知