ASP.NET控件模型比较及创建自定义控件时基类的选择

原创 2004年09月14日 16:19:00

ASP.NET控件模型的比较

ASP.NET提供了用户控件和自定义控件两种控件模型。一般而言,用户控件模型适合创建应用程序特定的控件,而自定义控件模型适合创建通用的再分发的控件。从部署的角度来看,自定义控件采用二进制的形式被部署使用,而用户控件必须以源代码的形式进行部署。用户控件派生自System.Web.UI.UserControl类,支持以开发ASP.NET页面的方式来进行开发,而自定义控件类直接或间接派生自Sytem.Web.UI.Control类,VS中没有创建自定义控件的设计器支持。自定义控件可提供丰富的设计期支持,而用户控件拥有很少的设计期支持。在内容和布局上,自定义控件可以展现任意动态内容,而用户控件则比较适用于静态内容。虽然模型不同,但两种类型的控件都是从System.Web.UI.Control类直接或间接派生而来。虽然用户控件是声明性的,但在页面中第一次使用时,用户控件会被解析并编译进配件中。此后,用户控件的行为就像任何其他编译的(或自定义)的控件一样。因此,两种模型之间没有明显的的区别,性能不是选择模型的主要因素,应根据部署、创建或设计期支持等其它因素来选择开发模型。

创建自定义控件时基类的选择

如果控件需要提供html之外的文本(如xml或wml)或不可见的html文本,应该选择从Control类派生。如果仅仅需要生成纯html文本且不为用户提供修改所生成元素的功能,也应该选择从Control类派生。Control类仅提供了ASP.NET页面生成过程中的所有生命周期事件。如果要生成可视化的html文本,应该选择从WebControl类派生,它提供了更多内置的UI属性。实际开发中,应优先考虑从现有的ASP.NET控件下手,通过继承或组合,复用现有功能其中自己需要的部分,改写或添加其它功能。

Asp.Net中的控件(一)验证控件 和DropList选择控件

Asp.Net入门从熟悉控件开始,Web页面中的一些控件的设定,简化了我们的代码。和VB很相似,控件分为了内部控件、外部控件。与Form窗体所不同的是Web页有一些验证性的控件,不需要我们在界面给出判...
  • dsj15831653282
  • dsj15831653282
  • 2016年06月08日 17:24
  • 1030

C#编写自定义控件心得

有些东西,从MSDN中很不容易找到,比如对一些属性的描述设定.这里可以为此做一些汇兑.     我设计了一个平滑进度条自定义C#控件,这在网上很容易找到一些现成的.不过,为了学习自定义C#控件的设计...
  • sxausgyy
  • sxausgyy
  • 2013年12月02日 23:00
  • 807

强大的ASP.NET控件----用户控件对战自定义控件

用户控件,用户控件的属性 自定义控件,如何使用自定义和用户控件,如何制作自定义控件和用户控件...
  • u010073895
  • u010073895
  • 2014年11月08日 21:34
  • 2650

asp.net WebForm之用户自定义控件

关于用户自定义控件,想必大家已经非常熟悉了。虽然说经常用过,但是只是简单的使用而已。在这里再次总结一下Asp.net中的UserControl,以便下次使用时 能够得心应手。本文将会介绍以下内容...
  • ydm19891101
  • ydm19891101
  • 2016年05月11日 09:45
  • 2674

ASP.NET自定义服务器控件

最简单的服务器端控件开发流程简介。
  • yanwushu
  • yanwushu
  • 2014年04月08日 21:34
  • 4315

系列:iOS开发-从扩展UIButton到自定义控件

系列:iOS开发-从扩展UIButton到自定义控件我们在做iOS开发的时候,往往要制作一些跟系统控件不一样的自定义控件, 比如我们会定义一个图片在上面,文字在下面的按钮, 比如我们会定义一个复杂的...
  • spicyShrimp
  • spicyShrimp
  • 2017年06月21日 18:09
  • 619

Asp.net 用户控件添加自定义事件asp.net

Asp.net 用户控件添加自定义事件asp.net
  • Sunqlive
  • Sunqlive
  • 2016年09月07日 11:17
  • 868

ASP.NET自定义控件组件开发 第一章:从一个简单的控件谈起

起始开发ASP.NET自定义控件不是那么的高深,当初我开始学的时候还有点恐惧,但是慢慢就好了。学习控件的开发技术,并不一定说以后要从事控件的开发,而是让我们深入的理解掌握ASP.NET内部的机理。你会...
  • quan_QQ
  • quan_QQ
  • 2017年03月07日 23:21
  • 1008

ASP.NET-常用选择控件

1. ListBox 控件 (1)简介 ListBox控件用于显示一组列表项,用户可以选择一项或多项。如果列表项的总数超出可以显示的项数,则ListBox控件会自动添加滚动条。 (2)属性 I...
  • qq_34874791
  • qq_34874791
  • 2017年06月05日 09:34
  • 131

C#中自定义控件隐藏基类成员(属性、方法和事件)的方法

编写自定义控件时,总是继承C#中提供的Control类,而Control类是C#中所有窗体控件的基类,里面定义了大量的属性、方法和事件,而很多基类成员在自定义控件中可能不需要,因为编写者会希望在自定义...
  • XueminXu
  • XueminXu
  • 2013年10月12日 11:33
  • 2292
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASP.NET控件模型比较及创建自定义控件时基类的选择
举报原因:
原因补充:

(最多只允许输入30个字)