|
A用户控件, B复合控件, C自定义控件 1。结果形式 ascx/dll/dll 2。继承于 System.Web.UI.UserControl/System.Web.UI.Control/System.Web.UI.Control 3。实现步骤 A--类似页面 B--实现INamingContainer,重写CreateChildControls()(这些是必须的) INamingContainer没有任何方法,实现该接口可以避免子控件的命名冲突 其它常用的: override OnPreRender();//控制复合控件的初时状态 delegate和event ////////////////////////////////////////////////////////////////////////////// using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace zm { public class CompositeControl:Control,INamingContainer { protected override void CreateChildControls() { base.CreateChildControls(); Controls.Add(new TextBox()); } } } ////////////////////////////////////////////////////////////////////////////// C继承Control,实现IPostBackDataHandler和IPostBackEventHandler,重写Render() 自定义控件不一定是WEB服务器控件
|
一共有 0 条评论