piperzero 发表于 2013-2-7 14:34:42

Web Control开发随笔(3):Control与WebControl 的Rendering Method初探

Control:
Render:WebControl继承自Control类,并且重写了Render方法。子类一般情况下应该重写该方法。
RenderChildren:用于呈现该控件的子节点(通常是HTML)
Render­Control:用于呈现控件(是一个Control对象)
RenderChildren是呈现控件,而CreateChildControls主要是初始化子控件(注意不是呈现子控件)。

WebControl:(继承Control的几个方法)
关于Render的几个重要方法(方法参数皆为HtmlTextWriter(相关3个枚举型:HtmlTextWriterTag,HtmlTextWriterAttribute,HtmlTextWriterStyle)):
AddAttributesToRender:WebControl的子类应该重写该方法,以便包含用于呈现最外层HTML元素的HTML属性的代码块。
RenderBeginTag:WebControl的子类应该重写该方法,以便包含用于呈现最外层HTML元素的打开标记的代码块。
RenderContents:WebControl的子类应该重写该方法,以便包含用于呈现最外层HTML元素的打开和关闭标记之间嵌套的HTML的代码块。
RenderEndTag:WebControl的子类应该重写该方法,以便包含用于呈现最外层HTML元素的关闭标记的代码块。
TagKey属性:只读属性,用于设置最外层HTML元素的HTML元素。
事件调用顺序

[*]CreateChildControls
[*]OnInit
[*]TrackViewState
[*]LoadViewState
[*]LoadPostData
[*]OnLoad
[*]RaisePostDataChangedEvent
[*]OnBubbleEvent)
[*]OnPreRender
[*]SaveViewState
[*]RenderControl
[*]Render
[*]RenderBeginTag
[*]AddAttributesToRender
[*]CreateControlStyle
[*]RenderContents
[*]RenderChildren
[*]RenderEndTag

[*]OnUnload
页: [1]
查看完整版本: Web Control开发随笔(3):Control与WebControl 的Rendering Method初探