1. 程式人生 > 實用技巧 >asp.net2.0中User Control與Server Control的區別

asp.net2.0中User Control與Server Control的區別

asp.net2.0中使用者自定義的User Control繼承於System.Web.UI.UserControl,而使用者自定義的Server Control則繼承於System.Web.UI.WebControls.WebControl。要想了解User Control與Server Control的不同,只需要看看這兩個類有什麼不同,如下圖。

asp.net2.0中詳細的Control類圖

  1. System.Web.UI.UserControl繼承於System.Web.UI.TamplateControl;
  2. System.Web.UI.UserControl實現了System.Web.INamingContainer;
    INamingContainer是一個標誌性介面它沒有定義任何方法。它表示這是一個容器控制元件,可以加入到頁面的控制元件樹中。
  3. System.Web.UI.UserControl實現了System.Web.IFilterResolutionService;
  4. System.Web.UI.UserControl實現了System.Web.IUserControlDesignerAccessor。
    用於在vs設計檢視中訪問與設定該控制元件。

綜上所述,User Control與Server Control的最大區別就是:

  1. User Control預設是一個容器控制元件,而Server Control不是(除非在自定義Server Control時實現INamingContainer);
  2. User Control可以在vs設計檢視中進行視覺化設計,而Server Control則只能通過編碼進行設計。

轉載於:https://blog.51cto.com/stliaobin/404806