GenericWebPart 類別

定義

將非 WebPart 控制項的伺服器控制項包裝,以便可以在執行階段顯示和如同真正的 WebPart 控制項一樣運作。

public ref class GenericWebPart : System::Web::UI::WebControls::WebParts::WebPart
public class GenericWebPart : System.Web.UI.WebControls.WebParts.WebPart
type GenericWebPart = class
    inherit WebPart
Public Class GenericWebPart
Inherits WebPart
繼承

範例

下列程式碼範例示範控制項如何在 GenericWebPart 執行時間自動包裝不是 WebPart 控制項的伺服器控制項。

程式碼範例的第一個部分包含具有兩 WebPartZone 個控制項的網頁元件頁面。 每個區域中都是標準 ASP.NET 伺服器控制項。 由於控制項位於 WebPartZone 區域中,因此在編譯頁面時,這些控制項會自動以 GenericWebPart 控制項包裝。 因此,您可以在這些控制項上宣告 WebPart 類別屬性。 在瀏覽器中載入頁面之後,如果您按一下 [ 顯示所有屬性值 ] 按鈕,每個控制項的詳細資料都會顯示在標籤中。 為了顯示控制項的運作方式 GenericWebPartCalendar 第一個區域中的控制項有一些 GenericWebPart 屬性設定在 .aspx 頁面的宣告式標記中,而 BulletedList 控制項則不會。 載入頁面之後,請注意兩個控制項的屬性值差異,而且兩者都有父 GenericWebPart 控制項。

<%@ Page Language="C#" 
  Codefile="genericwebpart.cs" 
  Inherits="genericwebpart_sample" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>GenericWebPart Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:WebPartManager ID="WebPartManager1" runat="server">
      </asp:WebPartManager>
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:Calendar ID="Calendar1" runat="server"
            Title="My Calendar"
            Description="A calendar used as a GenericWebPart control."
            CatalogIconImageUrl="MyCatalogIcon.gif"
            TitleIconimageUrl ="MyTitleIcon.gif"
            TitleUrl="MyInfoUrl.htm" 
            Width="250"/>
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:WebPartZone ID="WebPartZone2" runat="server">
        <ZoneTemplate>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>        
        </ZoneTemplate>
      </asp:WebPartZone>
      <hr />
      <asp:Button ID="Button1" width="200"
        runat="server" 
        Text="Display All Property Values" OnClick="Button1_Click" /> 
      <br />
      <asp:Label ID="Label2" runat="server" Text="" />
      <br />   
      <asp:Label ID="Label3" runat="server" Text="" />
    </form>
</body>
</html>
<%@ Page Language="vb" 
  Codefile="genericwebpart.vb" 
  Inherits="genericwebpart_sample" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>GenericWebPart Example</title>
</head>
<body>
    <form id="form1" runat="server">
      <asp:WebPartManager ID="WebPartManager1" runat="server">
      </asp:WebPartManager>
      <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
          <asp:Calendar ID="Calendar1" runat="server"
            Title="My Calendar"
            Description="A calendar used as a GenericWebPart control."
            CatalogIconImageUrl="MyCatalogIcon.gif"
            TitleIconimageUrl ="MyTitleIcon.gif"
            TitleUrl="MyInfoUrl.htm" 
            Width="250"/>
        </ZoneTemplate>
      </asp:WebPartZone>
      <asp:WebPartZone ID="WebPartZone2" runat="server">
        <ZoneTemplate>
          <asp:BulletedList ID="BulletedList1" 
            Runat="server"
            DisplayMode="HyperLink">
            <asp:ListItem Value="http://msdn.microsoft.com">
              MSDN
            </asp:ListItem>
            <asp:ListItem Value="http://www.asp.net">
              ASP.NET
            </asp:ListItem>
            <asp:ListItem Value="http://www.msn.com">
              MSN
            </asp:ListItem>
          </asp:BulletedList>        
        </ZoneTemplate>
      </asp:WebPartZone>
      <hr />
      <asp:Button ID="Button1" width="200"
        runat="server" 
        Text="Display All Property Values" OnClick="Button1_Click" /> 
      <br />
      <asp:Label ID="Label2" runat="server" Text="" />
      <br />   
      <asp:Label ID="Label3" runat="server" Text="" />
    </form>
</body>
</html>

程式碼範例的第二個部分會顯示部分類別,以程式設計方式存取控制項的某些 GenericWebPart 屬性。 請注意,在 方法中 Page_LoadGetGenericWebPart 方法是用來擷取包裝伺服器控制項之 GenericWebPart 控制項的執行時間實例。 這個取得父 GenericWebPart 控制項參考的方法可讓您以程式設計方式使用一般伺服器或使用者控制項,就像在執行時間是 WebPart 控制項一樣。

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class genericwebpart_sample : System.Web.UI.Page
{
  GenericWebPart calendarPart;
  GenericWebPart listPart;

  protected void Page_Load(Object sender, EventArgs e)
  {
    calendarPart = WebPartManager1.GetGenericWebPart(Calendar1);
    listPart = WebPartManager1.GetGenericWebPart(BulletedList1);

    if (!IsPostBack)
    {
      Label2.Text = String.Empty;
      Label3.Text = String.Empty;
    }
  }

  protected void Button1_Click(object sender, EventArgs e)
  {

    Label2.Text =
      @"<h3>Calendar GenericWebPart Properties</h3>" +
      "<em>Title: </em>" + calendarPart.Title +
      "<br />" +
      "<em>CatalogIconImageUrl:  </em>" + calendarPart.CatalogIconImageUrl +
      "<br />" +
      "<em>TitleUrl: </em>" + calendarPart.TitleUrl +
      "<br />" +
      "<em>Decription: </em>" + calendarPart.Description +
      "<br />" +
      "<em>TitleIconImageUrl: </em>" + calendarPart.TitleIconImageUrl +
      "<br />" +
      "<em>ChildControl ID: </em>" + calendarPart.ChildControl.ID +
      "<br />" +
      "<em>ChildControl Type: </em>" + calendarPart.ChildControl.GetType().Name +
      "<br />" +
      "<em>GenericWebPart ID: </em>" + calendarPart.ID +
      "<br />" +
      "<em>GenericWebPart Type: </em>" + calendarPart.GetType().Name +
      "<br />" +
      "<em>GenericWebPart Parent ID: </em>" + calendarPart.Parent.ID;

    Label3.Text =
      @"<h3>BulletedList GenericWebPart Properties</h3>" +
      "<em>Title: </em>" + listPart.Title +
      "<br />" +
      "<em>CatalogIconImageUrl:  </em>" + listPart.CatalogIconImageUrl +
      "<br />" +
      "<em>TitleUrl: </em>" + listPart.TitleUrl +
      "<br />" +
      "<em>Decription: </em>" + listPart.Description +
      "<br />" +
      "<em>TitleIconImageUrl: </em>" + listPart.TitleIconImageUrl +
      "<br />" +
      "<em>ChildControl ID: </em>" + listPart.ChildControl.ID +
      "<br />" +
      "<em>ChildControl Type: </em>" + listPart.ChildControl.GetType().Name +
      "<br />" +
      "<em>GenericWebPart ID: </em>" + listPart.ID +
      "<br />" +
      "<em>GenericWebPart Type: </em>" + listPart.GetType().Name +
      "<br />" +
      "<em>GenericWebPart Parent ID: </em>" + listPart.Parent.ID;
  }
}
Imports System.Data
Imports System.Configuration
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls

Partial Public Class genericwebpart_sample

  Inherits System.Web.UI.Page

  Private calendarPart As GenericWebPart
  Private listPart As GenericWebPart

  Protected Sub Page_Load(ByVal sender As [Object], ByVal e As EventArgs)
    calendarPart = WebPartManager1.GetGenericWebPart(Calendar1)
    listPart = WebPartManager1.GetGenericWebPart(BulletedList1)

    If Not IsPostBack Then
      Label2.Text = String.Empty
      Label3.Text = String.Empty
    End If

  End Sub


  Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)

    Label2.Text = _
      "<h3>Calendar GenericWebPart Properties</h3>" & _
      "<em>Title: </em>" & calendarPart.Title & _
      "<br />" & _
      "<em>CatalogIconImageUrl:  </em>" & calendarPart.CatalogIconImageUrl & _
      "<br />" & _
      "<em>TitleUrl: </em>" & calendarPart.TitleUrl & _
      "<br />" & _
      "<em>Decription: </em>" & calendarPart.Description & _
      "<br />" & _
      "<em>TitleIconImageUrl: </em>" & calendarPart.TitleIconImageUrl & _
      "<br />" & _
      "<em>ChildControl ID: </em>" & calendarPart.ChildControl.ID & _
      "<br />" & _
      "<em>ChildControl Type: </em>" & calendarPart.ChildControl.GetType().Name & _
      "<br />" & _
      "<em>GenericWebPart ID: </em>" & calendarPart.ID & _
      "<br />" & _
      "<em>GenericWebPart Type: </em>" & calendarPart.GetType().Name & _
      "<br />" & _
      "<em>GenericWebPart Parent ID: </em>" & calendarPart.Parent.ID

    Label3.Text = _
      "<h3>BulletedList GenericWebPart Properties</h3>" & _
      "<em>Title: </em>" & listPart.Title & _
      "<br />" & _
      "<em>CatalogIconImageUrl:  </em>" & listPart.CatalogIconImageUrl & _
      "<br />" & _
      "<em>TitleUrl: </em>" & listPart.TitleUrl & _
      "<br />" & _
      "<em>Decription: </em>" & listPart.Description & _
      "<br />" & _
      "<em>TitleIconImageUrl: </em>" & listPart.TitleIconImageUrl & _
      "<br />" & _
      "<em>ChildControl ID: </em>" & listPart.ChildControl.ID & _
      "<br />" & _
      "<em>ChildControl Type: </em>" & listPart.ChildControl.GetType().Name & _
      "<br />" & _
      "<em>GenericWebPart ID: </em>" & listPart.ID & _
      "<br />" & _
      "<em>GenericWebPart Type: </em>" & listPart.GetType().Name & _
      "<br />" & _
      "<em>GenericWebPart Parent ID: </em>" & listPart.Parent.ID
  End Sub

End Class

備註

控制項 GenericWebPart 存在,可為不是 WebPart 控制項的伺服器控制項提供執行時間包裝函式,讓這類控制項可用於網頁元件頁面和應用程式中。 當開發人員新增伺服器控制項,例如使用者控制項、ASP.NET 伺服器控制項或現有的自訂控制項時, WebPartZoneBase 控制項會在執行時間自動包裝伺服器控制項, GenericWebPart 讓它們可以呈現與 true WebPart 控制項相同的功能。

下表比較和對比 GenericWebPart 控制項和 WebPart 控制項。

GenericWebPart 控制項 WebPart 控制項
存在可讓不是 WebPart 具有網頁元件功能的伺服器控制項,讓任何 ASP.NET、自訂或使用者控制項都可以參與網頁元件應用程式。 存在可建立內建原生網頁元件功能的自訂 ASP.NET 控制項。 這包括個人化、連線、匯入和匯出,以及拖放功能。
永遠不會在頁面的標記中宣告。 它只會在執行時間包裝伺服器控制項,並讓包裝的控制項 (或子控制項) 控制項的完整功能 WebPart 可以在設計階段在頁面的標記中宣告,例如 ASP.NET 伺服器控制項,不同之處在于它是在 WebPartZoneBase 區域中宣告的。
包含並將其子控制項整合到 Web 元件個人化程式中,讓它可以做為真正的 WebPart 控制項。 這會自動發生,讓開發人員能夠輕鬆地在 Web 元件應用程式中使用伺服器控制項和使用者控制項。 會自動包含在 Web 元件個人化程式中。
您可以在執行時間 (以程式設計方式存取,方法是使用 GetGenericWebPart 方法,並將 子伺服器控制項傳遞至子伺服器控制項) ,例如 true WebPart 控制項或標準 ASP.NET 控制項。 可以在執行時間以程式設計方式存取,例如標準 ASP.NET 控制項。

使用者受益于 GenericWebPart 控制項,因為它提供一致的使用者體驗。 任何伺服器控制項都可以像控制項一樣 WebPart 運作,而且會有相同的一致使用者介面 (UI) 動詞、圖示、標題和標頭等元素。 開發人員受益于 GenericWebPart 控制項,因為它可讓他們重複使用 Web 元件應用程式內現有的使用者控制項和伺服器控制項。

注意

當您建立網頁元件頁面時,不需要執行任何動作,即可讓現有的使用者控制項或自訂控制項以 GenericWebPart 控制項包裝。 只要以程式設計方式或在頁面的標記中宣告伺服器或使用者控制項, WebPartZoneBase 而網頁元件控制項設定會在執行時間自動將控制項包裝至 GenericWebPart 某個物件即可。

因為放在 WebPartZoneBase 區域中的伺服器控制項會在執行時間以 GenericWebPart 控制項包裝,所以開發人員可以使用一般伺服器和使用者控制項,就像是 WebPart 控制項一樣。 請注意,如果您宣告繼承自 內 WebPartZoneControl 類的自訂控制項,這些控制項不支援使用內建 WebPart 屬性。 因此,您無法在這類控制項上宣告 IWebPart 屬性,包括 屬性和 Description 屬性等 Title 屬性。 相反地,其他類型的伺服器控制項 (,例如 WebPart 繼承自 WebControl) 的控制項、使用者控制項和自訂控制項可以宣告這些屬性,因為它們支援使用 expando 屬性。

Expando 屬性實際上是可以透過 IAttributeAccessor 介面動態新增至類別的字串。 實作此介面的控制項,包括 WebControl 類別及其子系,都可以使用 expando 屬性。 因為基 Control 類不支援 expando 屬性,所以當繼承自 類別的 Control 自訂控制項放在 , WebPartZone 並在執行時間以 GenericWebPart 控制項包裝時,Web 元件控制項集無法動態地將內建 IWebPart 屬性加入自訂控制項。 在此情況下,您有兩個選項。 您可以使用沒有屬性的 IWebPart 自訂控制項,也可以在自訂控制項中實 IWebPart 作 介面,讓它能夠使用屬性。

舉例來說,繼承 WebControl 自 的控制項可以使用 IWebPart 屬性,如果您在設計階段在) 頁面 WebPartZoneBase 的標記中宣告 ASP.NET Calendar 控制項 (,即使此控制項不會繼承自 WebPart 類別,也不會以原生方式包含 WebPart 成員,您仍然可以將它 WebPart 視為控制項。 您可以在行事曆控制項上宣告 WebPart 屬性,例如 TitleDescription 和其他。 在執行時間,您可以使用 GetGenericWebPart 方法,傳回 GenericWebPart 動態包裝行事曆控制項的控制項,並以程式 WebPart 設計方式與控制項搭配使用,並存取所有相同的屬性、事件和方法。

控制項 GenericWebPart 具有重要的屬性,可讓您存取其基礎伺服器控制項: ChildControl 屬性。 此屬性可讓開發人員以程式設計方式存取伺服器控制項。 控制項 ChildControl 也會使用 WebPartManager 屬性,從子控制項存取個人化資料,並在屬性設定時 AuthorizationFilter 執行授權。

控制項 GenericWebPart 有數個其他屬性,全部都會覆寫繼承自基 WebPart 類的屬性。 如前所述,您可以將這些屬性與任何子控制項搭配使用,使其可以做為 WebPart 控制項。 其中一個重要屬性是 ExportMode 屬性;它會決定可以匯出所有可匯出的屬性,還是只能匯出標示為非敏感性的屬性。 繼承自 類別的 WebPart UI 導向屬性,例如 CatalogIconImageUrlDescriptionTitleHeight 、、 TitleUrlWidth ,可以在放置於區域的任何伺服器控制項的宣告式標記中 WebPartZoneBase 設定。

類別中 GenericWebPart 的重要方法包括 CreateControlCollection 方法,它會建立控制項的集合, (包括子控制項) 與控制項相關聯的 GenericWebPart 子控制項,以及 Render 委派所有轉譯給包裝子控制項的方法。 類別上的 GenericWebPart 建構函式會受到保護,而且適用于內部使用或擴充性案例。

有一些額外的實用見解可用來處理 GenericWebPart 控制項。 如果您想要為 類別中 GenericWebPart 覆寫的屬性設定預設值,您的使用者控制項或自訂伺服器控制項可以實 IWebPart 作 和 IWebActionable 介面,並覆寫其成員。 在執行時間, GenericWebPart 控制項會從實作介面的子控制項取得實作屬性的值。 如果您的控制項使用 Personalizable 中繼資料屬性) 將其任何屬性定義為可個人化 (,控制項 GenericWebPart 會自動在執行時間啟用這些屬性以進行個人化,就像控制項上的 WebPart 可個人化屬性一樣。

如果您想要提供控制項的網頁元件編輯功能,您可以實作 IWebEditable 介面。 在執行時間,呼叫 方法時 CreateEditorPartsGenericWebPart 屬性的控制項程式碼 WebBrowsableObject 會呼叫子控制項中的相同屬性,並使用子控制項的實作來建立相關聯的自訂 EditorPart 控制項。

給繼承者的注意事項

在某些情況下,必須繼承自 GenericWebPart 類別。 其中一種情況是,當建立控制項時 GenericWebPart ,開發人員想要在建構函式中實作一些自訂動作。 例如,您可能想要將子控制項儲存在 類別中 GenericWebPart 控制項集合以外的位置。 如果您繼承自 GenericWebPart 類別,您也需要繼承自 WebPartManager 類別,並覆寫其 CreateWebPart(Control) 方法來建立自訂控制項。

建構函式

GenericWebPart(Control)

藉由將參考傳遞至成為子控制項的控制項,初始化 GenericWebPart 控制項的新執行個體。

屬性

AccessKey

取得或設定便捷鍵 (Access Key),可讓您快速巡覽至 Web 伺服器控制項。

(繼承來源 WebControl)
Adapter

針對控制項取得瀏覽器的特定配置器。

(繼承來源 Control)
AllowClose

取得或設定值,指出使用者可以在 Web 網頁上關閉 WebPart 控制項。

(繼承來源 WebPart)
AllowConnect

取得或設定值,指出 WebPart 控制項是否允許其他控制項與它組成連接。

(繼承來源 WebPart)
AllowEdit

取得或設定值,指出使用者可以透過由一個或多個 WebPart 控制項所提供的使用者介面 (UI) 修改 EditorPart 控制項。

(繼承來源 WebPart)
AllowHide

取得或設定值,指出是否允許使用者隱藏 WebPart 控制項。

(繼承來源 WebPart)
AllowMinimize

取得或設定值,指出使用者是否能夠最小化 WebPart 控制項。

(繼承來源 WebPart)
AllowZoneChange

取得或設定值,指出使用者是否能夠在 WebPart 區域之間移動 WebPartZoneBase 控制項。

(繼承來源 WebPart)
AppRelativeTemplateSourceDirectory

取得或設定包含了此控制項之 PageUserControl 物件的相對應用程式虛擬目錄。

(繼承來源 Control)
Attributes

取得任意屬性 (Attribute) 的集合 (只供呈現),不與控制項上的屬性 (Property) 對應。

(繼承來源 WebControl)
AuthorizationFilter

取得或設定自定字串,以判斷是否已獲授權將 WebPart 控制項加入至頁面。

(繼承來源 WebPart)
BackColor

取得或設定 Web 伺服器控制項的背景色彩。

(繼承來源 WebControl)
BackImageUrl

取得或設定面板控制項背景影像的 URL。

(繼承來源 Panel)
BindingContainer

取得包含了此控制項之資料繫結的控制項。

(繼承來源 Control)
BorderColor

取得或設定 Web 控制項的框線色彩。

(繼承來源 WebControl)
BorderStyle

取得或設定 Web 伺服器控制項的框線樣式。

(繼承來源 WebControl)
BorderWidth

取得或設定 Web 伺服器控制項的框線寬度。

(繼承來源 WebControl)
CatalogIconImageUrl

取得或設定至影像的 URL,該影像表示控制項目錄中的 GenericWebPart 控制項。

ChildControl

取得在執行階段,由 GenericWebPart 控制項包裝之子控制項的參考。

ChildControlsCreated

取得值,指出是否已經建立伺服器控制項的子控制項。

(繼承來源 Control)
ChromeState

取得或設定組件控制項是否為最小化或一般狀態。

(繼承來源 WebPart)
ChromeType

取得或設定圍繞著 Web 組件控制項的框線類型。

(繼承來源 WebPart)
ClientID

取得 ASP.NET 所產生之 HTML 標記的控制項識別碼。

(繼承來源 Control)
ClientIDMode

取得或設定用來產生 ClientID 屬性值的演算法。

(繼承來源 Control)
ClientIDSeparator

取得字元值,表示在 ClientID 屬性中所使用的分隔字元。

(繼承來源 Control)
ConnectErrorMessage

取得錯誤訊息,在連接處理序期間發生錯誤時,向使用者顯示。

(繼承來源 WebPart)
Context

取得與目前 Web 要求的伺服器控制項關聯的 HttpContext 物件。

(繼承來源 Control)
Controls

取得 ControlCollection 物件,其包含使用者介面階層架構中所指定伺服器控制項的子控制項。

(繼承來源 Part)
ControlStyle

取得 Web 伺服器控制項的樣式。 這個屬性主要由控制項開發人員使用。

(繼承來源 WebControl)
ControlStyleCreated

取得值,指出 Style 物件是否已經為 ControlStyle 屬性建立。 這個屬性主要由控制項開發人員使用。

(繼承來源 WebControl)
CssClass

取得或設定用戶端上 Web 伺服器控制項所呈現的階層式樣式表 (CSS)。

(繼承來源 WebControl)
DataItemContainer

如果命名容器實作 IDataItemContainer,則取得命名容器的參考。

(繼承來源 Control)
DataKeysContainer

如果命名容器實作 IDataKeysControl,則取得命名容器的參考。

(繼承來源 Control)
DefaultButton

取得或設定 Panel 控制項中包含之預設按鈕的識別項。

(繼承來源 Panel)
Description

取得或設定簡短片語,概括控制項的功能,用於伺服器控制項的工具提示和目錄。

DesignMode

取得值,指出控制項是否正用於設計介面上。

(繼承來源 Control)
Direction

取得或設定控制項中內容流動的水平方向。

(繼承來源 WebPart)
DisplayTitle

取得字串,其中包含實際顯示於 WebPart 控制項執行個體之標題列中的完整標題文字。

(繼承來源 WebPart)
Enabled

取得或設定值,指出 Web 伺服器控制項是否啟用。

(繼承來源 WebControl)
EnableTheming

取得或設定值,指出佈景主題是否套用至此控制項。

(繼承來源 WebControl)
EnableViewState

取得或設定值,該值表示伺服器控制項是否對要求的用戶端而言保持其檢視狀態,以及它包含的任何子控制項狀態。

(繼承來源 Control)
Events

取得控制項事件處理常式委派 (Delegate) 的清單。 這個屬性是唯讀的。

(繼承來源 Control)
ExportMode

取得或設定是否可匯出全部、一些 WebPart 控制項的屬性,或全部都不匯出。

(繼承來源 WebPart)
Font

取得與 Web 伺服器控制項關聯的字型屬性。

(繼承來源 WebControl)
ForeColor

取得或設定 Web 伺服器控制項的前景色彩 (通常是文字的色彩)。

(繼承來源 WebControl)
GroupingText

取得或設定面板控制項中包含之控制項群組的標題。

(繼承來源 Panel)
HasAttributes

取得值,指出控制項是否已經設定屬性。

(繼承來源 WebControl)
HasChildViewState

取得值,指出目前伺服器控制項的子控制項是否有任何已儲存的檢視狀態設定。

(繼承來源 Control)
HasSharedData

取得值,指出 WebPart 控制項是否有任何共用個人化資料與其相關聯。

(繼承來源 WebPart)
HasUserData

取得值,指出 WebPart 控制項是否有任何使用者個人化資料與其相關聯。

(繼承來源 WebPart)
Height

取得或設定控制項的高度 (以像素為單位)。

HelpMode

取得或設定使用者介面 (UI) 型別,該型別要用來顯示 WebPart 控制項的 [說明] 內容。

(繼承來源 WebPart)
HelpUrl

取得或設定 URL,該 URL 指向 WebPart 控制項的說明檔。

(繼承來源 WebPart)
Hidden

取得或設定值,指出 WebPart 控制項是否顯示在 Web 網頁上。

(繼承來源 WebPart)
HorizontalAlign

取得或設定在面板中內容的水平對齊。

(繼承來源 Panel)
ID

取得或設定控制項的 ID。 這個值是不可繼承的。

IdSeparator

取得用來分隔控制項識別項的字元。

(繼承來源 Control)
ImportErrorMessage

取得或設定錯誤訊息,如果匯入 WebPart 控制項時發生錯誤,就可以使用此錯誤訊息。

(繼承來源 WebPart)
IsChildControlStateCleared

取得值,指出這個控制項中所包含的控制項是否有控制項狀態。

(繼承來源 Control)
IsClosed

取得值,指出 WebPart 控制項目前是否已在 Web 組件頁面上關閉。

(繼承來源 WebPart)
IsEnabled

取得值,指出是否啟用控制項。

(繼承來源 WebControl)
IsShared

取得值,指出 WebPart 控制項是否共用,也就是,是否 Web 組件頁面的所有使用者都可以看見。

(繼承來源 WebPart)
IsStandalone

取得值,指出 WebPart 控制項是否為獨立的,也就是說,它不包含在 WebPartZoneBase 區域之中。

(繼承來源 WebPart)
IsStatic

取得值,指出 WebPart 控制項是否為靜態控制項,也就是說,控制項是在 Web 組件頁面的標記中宣告,而不是透過程式設計加入至網頁。

(繼承來源 WebPart)
IsTrackingViewState

取得值,指出伺服器控制項是否正在儲存檢視狀態的變更。

(繼承來源 Control)
IsViewStateEnabled

取得值,指出這個控制項是否已啟用檢視狀態。

(繼承來源 Control)
LoadViewStateByID

取得值,指出控制項是否依 ID (而不是索引) 參與載入其檢視狀態。

(繼承來源 Control)
NamingContainer

取得伺服器控制項命名容器的參考,其建立唯一命名空間,在具有相同 ID 屬性值的伺服器控制項之間作區別。

(繼承來源 Control)
Page

取得含有伺服器控制項的 Page 執行個體的參考。

(繼承來源 Control)
Parent

在網頁控制階層架構中取得伺服器控制項之父控制項的參考。

(繼承來源 Control)
RenderingCompatibility

取得值,這個值會指定將與呈現 HTML 相容的 ASP.NET 版本。

(繼承來源 Control)
ScrollBars

取得或設定在 Panel 控制項中捲軸的可視性和位置。

(繼承來源 Panel)
Site

當呈現在設計介面上時,取得裝載目前控制項之容器的資訊。

(繼承來源 Control)
SkinID

取得或設定要套用至控制項的面板。

(繼承來源 WebControl)
Style

取得文字屬性的集合,將呈現為 Web 伺服器控制項的外部標記上的樣式屬性。

(繼承來源 WebControl)
Subtitle

取得與 Title 屬性值串連的字串,以形成控制項的完整標題。

SupportsDisabledAttribute

取得值,這個值表示當控制項的 disabled 屬性為 IsEnabled 時,控制項是否應該將呈現之 HTML 項目的 false 屬性設為 "disabled"。

(繼承來源 Panel)
TabIndex

取得或設定 Web 伺服器控制項的定位索引。

(繼承來源 WebControl)
TagKey

取得對應至這個 Web 伺服器控制項的 HtmlTextWriterTag 值。 這個屬性主要由控制項開發人員使用。

(繼承來源 WebControl)
TagName

取得控制項標記的名稱。 這個屬性主要由控制項開發人員使用。

(繼承來源 WebControl)
TemplateControl

取得或設定包含了此控制項之樣板的參考。

(繼承來源 Control)
TemplateSourceDirectory

取得包含目前伺服器控制項的 PageUserControl 的虛擬目錄。

(繼承來源 Control)
Title

取得或設定 GenericWebPart 控制項的標題。

TitleIconImageUrl

取得或設定至影像的 URL,該影像用於表示控制項標題列中的 GenericWebPart 控制項。

TitleUrl

取得或設定至 GenericWebPart 控制項之補充資訊的 URL。

ToolTip

取得或設定當滑鼠指標停留在 Web 伺服器控制項時顯示的文字。

(繼承來源 WebControl)
UniqueID

取得伺服器控制項唯一的、符合階層架構的識別項。

(繼承來源 Control)
ValidateRequestMode

取得或設定值,指出控制項是否對來自瀏覽器的用戶端輸入檢查潛在的危險值。

(繼承來源 Control)
Verbs

取得與 GenericWebPart 控制項相關聯之自訂動詞命令的集合。

ViewState

取得狀態資訊的字典,允許您在相同網頁的多個要求之間,儲存和還原伺服器控制項的檢視狀態。

(繼承來源 Control)
ViewStateIgnoresCase

取得值,指出 StateBag 物件是否不區分大小寫。

(繼承來源 Control)
ViewStateMode

取得或設定這個控制項的檢視狀態模式。

(繼承來源 Control)
Visible

取得或設定值,指出伺服器控制項是否會轉譯為頁面上的 UI。

(繼承來源 Control)
WebBrowsableObject

取得子控制項的參考,以讓自訂 EditorPart 控制項可以編輯該控制項。

WebPartManager

取得與 WebPartManager 控制項執行個體相關聯之 WebPart 控制項的參考。

(繼承來源 WebPart)
Width

取得或設定控制項的寬度 (以字元為單位)。

Wrap

取得或設定值,指示面板中的內容是否換行。

(繼承來源 Panel)
Zone

取得 WebPartZoneBase 區域,該區域目前包含一個 WebPart 控制項。

(繼承來源 WebPart)
ZoneIndex

取得 WebPart 控制項在其區域中的索引位置。

(繼承來源 WebPart)

方法

AddAttributesToRender(HtmlTextWriter)

將背景影像、對齊方式、換行和方向的相關資訊加入要呈現的屬性清單中。

(繼承來源 Panel)
AddedControl(Control, Int32)

在子控制項加入 Control 物件的 Controls 集合後呼叫。

(繼承來源 Control)
AddParsedSubObject(Object)

通知伺服器控制項,XML 或 HTML 項目已剖析,並將項目加入伺服器控制項的 ControlCollection 物件中。

(繼承來源 Control)
ApplyStyle(Style)

將指定樣式的任何非空白項目加入到 Web 控制項中,覆寫控制項的任何現有的樣式項目。 這個方法主要由控制項開發人員使用。

(繼承來源 WebControl)
ApplyStyleSheetSkin(Page)

將頁面樣式表中所定義的樣式屬性套用至控制項。

(繼承來源 Control)
BeginRenderTracing(TextWriter, Object)

開始進行轉譯資料的設計階段追蹤。

(繼承來源 Control)
BuildProfileTree(String, Boolean)

收集伺服器控制項的相關資訊,並在頁面啟用追蹤時將此資訊傳遞至 Trace 屬性以顯示之。

(繼承來源 Control)
ClearCachedClientID()

將快取的 ClientID 值設定為 null

(繼承來源 Control)
ClearChildControlState()

刪除伺服器控制項之子控制項的控制項狀態資訊。

(繼承來源 Control)
ClearChildState()

刪除所有伺服器控制項之子控制項的檢視狀態和控制項狀態資訊。

(繼承來源 Control)
ClearChildViewState()

刪除所有伺服器控制項之子控制項的檢視狀態資訊。

(繼承來源 Control)
ClearEffectiveClientIDMode()

將目前的控制項執行個體和任何子控制項的 ClientIDMode 屬性設定為 Inherit

(繼承來源 Control)
CopyBaseAttributes(WebControl)

將不被 Style 物件封裝的屬性從指定的 Web 伺服器控制項複製到呼叫這個方法的 Web 伺服器控制項上。 這個方法主要由控制項開發人員使用。

(繼承來源 WebControl)
CreateChildControls()

由 ASP.NET 網頁架構呼叫,通知使用組合實作的伺服器控制項來建立所包含的任何子控制項,以準備回傳或呈現。

CreateControlCollection()

覆寫基底方法,以建立唯讀集合,該集合包含 GenericWebPart 控制項包裝的子控制項。

CreateControlStyle()

建立樣式物件,這個物件是由 Panel 控制項在內部使用,以實作所有的樣式相關屬性。

(繼承來源 Panel)
CreateEditorParts()

傳回自訂 EditorPart 控制項的集合,在 GenericWebPart 控制項的子控制項處於編輯模式時,可以使用這些控制項編輯它。

DataBind()

將資料來源繫結至所叫用的伺服器控制項及其所有子控制項。

(繼承來源 Part)
DataBind(Boolean)

使用會引發 DataBinding 事件的選項,繫結資料來源至叫用的伺服器控制項及其所有子控制項。

(繼承來源 Control)
DataBindChildren()

繫結資料來源至伺服器控制項的子控制項。

(繼承來源 Control)
Dispose()

啟用伺服器控制項,在它從記憶體釋放之前執行最後清除。

(繼承來源 Control)
EndRenderTracing(TextWriter, Object)

結束轉譯資料的設計階段追蹤。

(繼承來源 Control)
EnsureChildControls()

判斷伺服器控制項是否包含子控制項。 如果不包含,則建立子控制項。

(繼承來源 Control)
EnsureID()

為尚未指定識別項的控制項,建立識別項。

(繼承來源 Control)
Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
FindControl(String)

在目前命名容器搜尋具有指定 id 參數的伺服器控制項。

(繼承來源 Control)
FindControl(String, Int32)

使用指定的 id 和有助於搜尋之 pathOffset 參數中所指定的整數,在目前的命名容器中搜尋伺服器控制項。 您不應該覆寫這個版本的 FindControl 方法。

(繼承來源 Control)
Focus()

設定控制項的輸入焦點。

(繼承來源 Control)
GetDesignModeState()

取得控制項的設計階段資料。

(繼承來源 Control)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetRouteUrl(Object)

取得會對應於一組路由參數的 URL。

(繼承來源 Control)
GetRouteUrl(RouteValueDictionary)

取得會對應於一組路由參數的 URL。

(繼承來源 Control)
GetRouteUrl(String, Object)

取得 URL,此 URL 對應於一組路由參數及一個路由名稱。

(繼承來源 Control)
GetRouteUrl(String, RouteValueDictionary)

取得 URL,此 URL 對應於一組路由參數及一個路由名稱。

(繼承來源 Control)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
GetUniqueIDRelativeTo(Control)

傳回指定之控制項 UniqueID 屬性的前置部分。

(繼承來源 Control)
HasControls()

判斷伺服器控制項是否包含任何子控制項。

(繼承來源 Control)
HasEvents()

傳回值,指出控制項或任何子控制項的事件是否已註冊。

(繼承來源 Control)
IsLiteralContent()

判斷伺服器控制項是否只儲存常值內容。

(繼承來源 Control)
LoadControlState(Object)

SaveControlState() 方法所儲存的上一頁要求中,還原控制項狀態資訊。

(繼承來源 Control)
LoadViewState(Object)

從上一個使用 SaveViewState() 方法儲存的要求中,還原檢視狀態資訊。

(繼承來源 WebControl)
MapPathSecure(String)

擷取虛擬絕對路徑或相對路徑所對應至的實體路徑。

(繼承來源 Control)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
MergeStyle(Style)

將指定樣式的任何非空白項目複製到 Web 控制項,但不覆寫控制項的任何現有樣式項目。 這個方法主要由控制項開發人員使用。

(繼承來源 WebControl)
OnBubbleEvent(Object, EventArgs)

決定伺服器控制項的事件是否要在頁面的 UI 伺服器控制項階層架構中向上傳遞。

(繼承來源 Control)
OnClosing(EventArgs)

WebPart 控制項在 Web 組件頁面上關閉時,可以讓衍生的類別提供自訂處理。

(繼承來源 WebPart)
OnConnectModeChanged(EventArgs)

WebPart 控制項開始或結束連接至其他控制項的處理序時,可以讓衍生的類別提供自訂處理。

(繼承來源 WebPart)
OnDataBinding(EventArgs)

引發 DataBinding 事件。

(繼承來源 Control)
OnDeleting(EventArgs)

WebPart 控制項從 Web 組件頁面永遠移除時,可以讓衍生的類別提供自訂處理。

(繼承來源 WebPart)
OnEditModeChanged(EventArgs)

WebPart 控制項進入或離開編輯模式時,可以讓衍生的類別提供自訂處理。

(繼承來源 WebPart)
OnInit(EventArgs)

引發 Init 事件。

(繼承來源 Control)
OnLoad(EventArgs)

引發 Load 事件。

(繼承來源 Control)
OnPreRender(EventArgs)

引發 PreRender 事件。

(繼承來源 Control)
OnUnload(EventArgs)

引發 Unload 事件。

(繼承來源 Control)
OpenFile(String)

取得用來讀取檔案的 Stream

(繼承來源 Control)
RaiseBubbleEvent(Object, EventArgs)

指派事件的任何來源和它的資訊至控制項的父控制項。

(繼承來源 Control)
RemovedControl(Control)

Control 物件的 Controls 集合中移除子控制項之後呼叫。

(繼承來源 Control)
Render(HtmlTextWriter)

委派將控制項的內容呈現給子控制項。

RenderBeginTag(HtmlTextWriter)

Panel 控制項的 HTML 開頭標記呈現在指定的寫入器中。

(繼承來源 Panel)
RenderChildren(HtmlTextWriter)

將伺服器控制項子系的內容輸出至提供的 HtmlTextWriter 物件,再由這個物件在用戶端上寫入要轉譯的內容。

(繼承來源 Control)
RenderContents(HtmlTextWriter)

將控制項的內容呈現在指定的寫入器。 這個方法主要由控制項開發人員使用。

(繼承來源 WebControl)
RenderControl(HtmlTextWriter)

將伺服器控制項內容輸出至提供的 HtmlTextWriter 物件,並在啟用追蹤時儲存控制項的追蹤資訊。

(繼承來源 Control)
RenderControl(HtmlTextWriter, ControlAdapter)

使用提供的 HtmlTextWriter 物件,輸出伺服器控制項內容至提供的 ControlAdapter 物件。

(繼承來源 Control)
RenderEndTag(HtmlTextWriter)

Panel 控制項的 HTML 結尾標記呈現在指定的寫入器中。

(繼承來源 Panel)
ResolveAdapter()

取得負責呈現指定之控制項的控制項配置器。

(繼承來源 Control)
ResolveClientUrl(String)

取得瀏覽器可使用的 URL。

(繼承來源 Control)
ResolveUrl(String)

將 URL 轉換為要求用戶端可使用的 URL。

(繼承來源 Control)
SaveControlState()

儲存頁面回傳至伺服器以來,所發生的任何伺服器控制項狀態變更。

(繼承來源 Control)
SaveViewState()

儲存叫用 TrackViewState() 方法後已修改的任何狀態。

(繼承來源 WebControl)
SetDesignModeState(IDictionary)

設定控制項的設計階段資料。

(繼承來源 Control)
SetPersonalizationDirty()

設定旗標,指出已變更目前 WebPart 控制項執行個體的個人化資料。

(繼承來源 WebPart)
SetRenderMethodDelegate(RenderMethod)

指定事件處理常式委派,以呈現伺服器控制項及其內容至其父控制項。

(繼承來源 Control)
SetTraceData(Object, Object)

使用追蹤資料機碼和追蹤資料值,設定設計階段期間追蹤呈現資料的追蹤資料。

(繼承來源 Control)
SetTraceData(Object, Object, Object)

使用追蹤的物體、追蹤資料機碼和追蹤資料值,設定設計階段期間追蹤呈現資料的追蹤資料。

(繼承來源 Control)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)
TrackViewState()

讓控制項追蹤其檢視狀態的變更,以便將這些變更儲存在物件的 ViewState 屬性中。

(繼承來源 WebPart)

事件

DataBinding

發生於伺服器控制項繫結至資料來源時。

(繼承來源 Control)
Disposed

發生於伺服器控制項從記憶體釋放時,這是在要求 ASP.NET 網頁時,伺服器控制項生命週期的最後階段。

(繼承來源 Control)
Init

發生於初始化伺服器控制項時,是其生命週期中的第一個步驟。

(繼承來源 Control)
Load

發生於載入伺服器控制項至 Page 物件時。

(繼承來源 Control)
PreRender

Control 物件載入之後但在呈現之前發生。

(繼承來源 Control)
Unload

發生於伺服器控制項從記憶體卸載時。

(繼承來源 Control)

明確介面實作

IAttributeAccessor.GetAttribute(String)

使用指定的名稱,取得 Web 控制項的屬性。

(繼承來源 WebControl)
IAttributeAccessor.SetAttribute(String, String)

將 Web 控制項的屬性設定為指定的名稱和值。

(繼承來源 WebControl)
ICompositeControlDesignerAccessor.RecreateChildControls()

讓複合組件控制項設計工具的開發人員得以在設計介面上重新建立控制項的子控制項。

(繼承來源 Part)
IControlBuilderAccessor.ControlBuilder

如需這個成員的說明,請參閱 ControlBuilder

(繼承來源 Control)
IControlDesignerAccessor.GetDesignModeState()

如需這個成員的說明,請參閱 GetDesignModeState()

(繼承來源 Control)
IControlDesignerAccessor.SetDesignModeState(IDictionary)

如需這個成員的說明,請參閱 SetDesignModeState(IDictionary)

(繼承來源 Control)
IControlDesignerAccessor.SetOwnerControl(Control)

如需這個成員的說明,請參閱 SetOwnerControl(Control)

(繼承來源 Control)
IControlDesignerAccessor.UserData

如需這個成員的說明,請參閱 UserData

(繼承來源 Control)
IDataBindingsAccessor.DataBindings

如需這個成員的說明,請參閱 DataBindings

(繼承來源 Control)
IDataBindingsAccessor.HasDataBindings

如需這個成員的說明,請參閱 HasDataBindings

(繼承來源 Control)
IExpressionsAccessor.Expressions

如需這個成員的說明,請參閱 Expressions

(繼承來源 Control)
IExpressionsAccessor.HasExpressions

如需這個成員的說明,請參閱 HasExpressions

(繼承來源 Control)
IParserAccessor.AddParsedSubObject(Object)

如需這個成員的說明,請參閱 AddParsedSubObject(Object)

(繼承來源 Control)

擴充方法

FindDataSourceControl(Control)

傳回與指定之控制項的資料控制項相關聯的資料來源。

FindFieldTemplate(Control, String)

傳回在指定之控制項的命名容器中所指定資料行的欄位樣板。

FindMetaTable(Control)

傳回包含資料控制項的中繼資料表物件。

GetDefaultValues(INamingContainer)

取得所指定資料控制項的預設值集合。

GetMetaTable(INamingContainer)

取得所指定資料控制項中的資料表中繼資料。

SetMetaTable(INamingContainer, MetaTable)

設定所指定資料控制項中的資料表中繼資料。

SetMetaTable(INamingContainer, MetaTable, IDictionary<String,Object>)

設定所指定資料控制項的資料表中繼資料及預設值對應。

SetMetaTable(INamingContainer, MetaTable, Object)

設定所指定資料控制項的資料表中繼資料及預設值對應。

TryGetMetaTable(INamingContainer, MetaTable)

判斷資料表中繼資料是否可供使用。

EnableDynamicData(INamingContainer, Type)

針對指定的資料控制項啟用動態資料行為。

EnableDynamicData(INamingContainer, Type, IDictionary<String,Object>)

針對指定的資料控制項啟用動態資料行為。

EnableDynamicData(INamingContainer, Type, Object)

針對指定的資料控制項啟用動態資料行為。

適用於

另請參閱