色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

asp.net控件開發基礎(4)

  一.從繼承WebControl開始

  在第二篇教程中,重點介紹了Render()方法的使用,用來呈現控件,但從Control類繼承的控件尚未發揮ASP.NET控件的作用.大家知道web服務器控件分為HTML服務器控件(如<input id="Button2" runat="server" type="button" value="button" />這樣的形式)和標準服務器控件(就是<ASP:..  id="" runat="server" />這樣的形式的控件)。

  HTML服務器控件的控件從System.Web.UI.HtmlControls.HtmlControl 類派生,標準服務器控件的控件從System.Web.UI.WebControls.WebControl 類派生,HtmlControl 類和WebControl 類則從System.Web.UI.Control 類派生,并擴展。

  所以我們說,所有的服務器控件都繼承自System.Web.UI.Control 類,即所有的服務器控件都具有Control 類的共同屬性,如Visible,EnableViewState屬性,HtmlControl 類和WebControl 類則擴充了System.Web.UI.Control 類的功能,如HtmlControl 類定義了所有 HTML 服務器控件所通用的方法、屬性 (Property) 和事件(具體參數參照MSDN),WebControl 類定義了所有 標準服務器控件所通用的方法、屬性 (Property) 和事件(具體參數參照MSDN)。

  如每個繼承了WebControl 類的標準控件都有定義外觀和行為的屬性,然后不同控件再根據需要擴展功能.

  圖一

  所以我們推薦的做法是直接從WebControl 類派生,而非Control類.我們所做的非并從頭開始.從WebControl 類繼承可以幫我們省很多工作.

  二.重寫WebControl類方法,不再是Render()

  WebControl類繼承了Control類,當然有Render方法,在WebControl類中重寫了Render方法,如下代碼
  示例一

protected override void Render(HtmlTextWriter output)
{
 RenderBeginTag(output);
 RenderContents(output);
 RenderEndTag(output);
}

NET技術asp.net控件開發基礎(4),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 锦屏县| 隆安县| 陇川县| 黑河市| 新宁县| 武隆县| 达孜县| 岳西县| 高邑县| 十堰市| 明光市| 明光市| 蒙城县| 鄂温| 大庆市| 荥阳市| 丹东市| 鲁甸县| 洛南县| 大余县| 象山县| 延边| 新郑市| 华池县| 望都县| 鹤山市| 奎屯市| 甘肃省| 孙吴县| 枞阳县| 滁州市| 玉环县| 龙游县| 军事| 绥宁县| 长海县| 自贡市| 屯留县| 台山市| 两当县| 高阳县|