合肥网站建设的公司哪家好,建设工程信息网官网查询系统,vs html5网站开发,建筑公司发展规划每个页面都有一个控件树#xff0c;代表本页面所拥有的所有子控件#xff0c;页面控件就是控件树的根#xff0c;为了生成控件树#xff0c;页面将建立一个HtmlTextWriter类的实例#xff0c;在这个实例中封装了相应流#xff0c;接着页面会把HtmlTextWriter对象传递给Re… 每个页面都有一个控件树代表本页面所拥有的所有子控件页面控件就是控件树的根为了生成控件树页面将建立一个HtmlTextWriter类的实例在这个实例中封装了相应流接着页面会把HtmlTextWriter对象传递给RenderControlRenderControl会检查控件的Visible属性是否为真如果是真RenderControl会调用Render方法而Render方法会去调用RenderContentsRenderContents方法负责将控件的内容呈现到指定的编写器中如果控件有子控件的话Render方法又会把HtmlTextWriter传递给RenderChildren方法RenderChildren方法负责生成控件的子控件。 控件生命周期的Render阶段主要将控件标记和字符文本输出到服务器控件输出流中。在这个阶段可以直接写HTML标记也可以调用每个控件都有的RenderControl方法到输出流。在WebControl基类中以Render开头的呈现方法有如下几个 Ø RenderControl(HtmlTextWriter writer) Ø Render(HtmlTextWriter writer) Ø RenderBeginTag(HtmlTextWriter writer) Ø RenderContents(HtmlTextWriter output) Ø RenderEndTag(HtmlTextWriter writer) 以上几个Render方法并不是毫无联系的它们的执行顺序是从上往下并且有嵌套的调用关系。其中在RenderControl方法内部会调用Render方法在Render方法内部会依次调用RenderBeginTag, RenderContents和RenderEndTag。 其中RenderControl和Render是Control基类中的方法因为WebControl本身也是继承Control的。一般在开发基本控件时我们只需重写RenderContents方法即可在此方法中可以把控件HTML文本标记和其他内容写到输出流中。 另外还有两个可以重载的方法 RenderBeginTag和RenderEndTag。这两个方法执行时刻点是分别在Render控件内容之前和之后。可以重写这两个方法自己定义控件的起始和结束标记。默认情况下控件是以Span/Span作为起始和结束标记的 出处http://blog.csdn.net/ChengKing/archive/2009/01/01/3678388.aspx 该文章经过本人整理所得,欢迎转载,转载时请加上本文地址;本文基于 署名 2.5 中国大陆许可协议发布请勿演绎或用于商业目的但是必须保留本文的署名 张志涛包含链接如您有任何疑问或者授权方面的协商请 给我留言。