色尼玛亚洲综合影院,亚洲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),轉載需保留來源!

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

主站蜘蛛池模板: 广安市| 富民县| 从化市| 阿勒泰市| 南华县| 莱州市| 石泉县| 江城| 大厂| 辽中县| 长治市| 旬阳县| 简阳市| 临清市| 遂宁市| 泾阳县| 开化县| 永福县| 台东市| 临高县| 金塔县| 策勒县| 茌平县| 浮山县| 通辽市| 扎赉特旗| 姚安县| 永新县| 大渡口区| 新宁县| 江源县| 类乌齐县| 九龙县| 息烽县| 巴马| 罗源县| 巴塘县| 志丹县| 措美县| 沽源县| 张北县|