在VS2008中创建自定义控件(六)创建完全自定义控件

 


 

本文目的:

创建一个不是继承其他服务器控件的完全自定义控件。

 


 

 

    在《在VS2008中创建自定义控件(三)在网页中添加自定义控件》和《在VS2008中创建自定义控件(四)为自定义控件添加默认值》中介绍的自定义控件都是直接继承了TextBox服务器控件的自定义控件,事实上,asp.net中允许创建一个完全的自定义控件,也就是不从任何一个服务器控件中继承的自定义控件。

 

    首先,我们在自定义控件项目中添加一个新的“asp.net服务器控件”,命名为“myCustomControl.cs”,如下图所示。

 

    添加完之后,VS会自动为myCustomControl.cs添加一些代码,如下图所示:

    从上图中我们可以看出,在默认情况下,VS让自定义控件继承了WebControl类,这个类是所有控件的基类。如果你不想让自定义控件继承任何一个服务器控件的话,那么你就可以让你的自定义控件继承这个类。

    WebControl类在默认情况下,将会生成一对封闭的<span></span>标签,你可以将需要生成的代码放在这对标签里(不过这是后话了)。

 

    现在,我们在网站项目里添加一个Default.aspx文件,在设计视图里将自定义的myCustomControl控件拖入到网页中,此时Default.aspx的源代码如下所示。

 

    我们仔细看一下上图中的第二个圆圈中的文字,这段文字也是由VS自动生成的,而生成这段文字的依据是在自定义控件的cs文件中,如下所示。

 

    从上图中我们可以看出,网页源代码中的内容是根本上图的ToolboxData属性值产生的,而该项属性值中的{0}就是前面我们定义的别名。

 

    这是一个最简单的自定义控件,而这个控件的作用只是在网页的相应位置添加一个<span></span>标签,我们可以生成解决方案后在浏览器中查看一下运行结果——当然从运行结果中,我们什么也看不到,不过我们可以看一下生成的网页的源代码,如下图所示。

 

    从上图中我们可以看到这个自定义控件的最后生成的代码为“<span id="myCustomControl1"></span>”。

===================================================================

原创不容易,转载请注明出处:http://hi.csdn.net/smallfools

相关链接:

  1. 在VS2008中创建自定义控件(一)创建网站项目和自定义控件项目
  2. 在VS2008中创建自定义控件(二)创建自定义控件并将其添加到工具箱中
  3. 在VS2008中创建自定义控件(三)在网页中添加自定义控件
  4. 在VS2008中创建自定义控件(四)为自定义控件添加默认值
  5. 在VS2008中创建自定义控件(五)修改tagprefix
  6. 在VS2008中创建自定义控件(六)创建完全自定义控件
  7. 在VS2008中创建自定义控件(七)自定义控件的中常用到的特性
  8. 在VS2008中创建自定义控件(八)输出HTML代码
  9. 在VS2008中创建自定义控件(九)添加属性
  10. 在VS2008中创建自定义控件(十)添加枚举型属性
  11. 在VS2008中创建自定义控件(十一)添加在属性窗口中可折叠的属性(一)
  12. 在VS2008中创建自定义控件(十二)添加在属性窗口中可折叠的属性(二)
  13. 在VS2008中创建自定义控件(十三)添加内镶属性
  14. 在VS2008中创建自定义控件(十四)内镶属性与内联属性的优先级
  15. 在VS2008中创建自定义控件(十五)创建控件时出错(未能对属性XXX设置XXX)的解决方法

===================================================================

    本例源代码可以在http://download.csdn.net/source/3267841下载

阅读更多
个人分类: asp.net
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭