ASP.NET 網頁組件控制項概觀
ASP.NET 網頁組件是用以建立網站的整合式控制項集合,可讓使用者直接從瀏覽器修改網頁的內容、外觀和行為。這些修改可以套用至網站上的所有使用者或個別使用者。當使用者修改網頁和控制項時,可以儲存這些設定,以保留使用者的個人喜好設定,供未來的瀏覽器工作階段使用,此功能稱為個人化。這些網頁組件功能可讓開發人員授權使用者動態地個人化 Web 應用程式,而不需要開發人員或管理員介入。
網頁組件比某些其他 ASP.NET 控制項更複雜。如需有關網頁組件的詳細資訊,請參閱 MSDN Library 中的下列主題:
每個網頁組件網頁上都需要的一項 UI 結構元件為 WebPartManager 控制項。雖然不會看到此控制項,但其承擔了協調網頁上所有網頁組件控制項的重要工作。例如,它會追蹤所有個別網頁組件控制項。它也會管理網頁組件區域 (這是網頁上包含網頁組件控制項的部位),以及哪個控制項位於哪個區域中。它還會追蹤及控制網頁的不同顯示模式 (例如瀏覽、連接、編輯或目錄模式),以及決定個人化變更應套用至所有使用者或是套用至個別使用者。最後,它還會初始化並追蹤網頁組件控制項之間的連接和通訊。
第二種類型的 UI 結構元件是區域 (Zone)。區域的作用是網頁組件網頁上的版面配置管理員。它們包含並組織衍生自 Part 類別 (組件控制項) 的控制項,並提供以水平或垂直方向進行模組化版面配置的能力。區域還會為其包含的每個控制項提供通用和一致的 UI 元素 (例如,頁首及頁尾樣式、標題、框線樣式、動作按鈕等);這些通用元素稱為控制項的組件區塊 (Chrome)。有幾種特定類型的區域會用於不同的顯示模式,並使用不同的控制項。
ASP.NET WebParts 結構控制項
WebPartManager 控制項
管理網頁上的所有網頁組件控制項。每個網頁組件網頁都需要 (也只需要) 一個 WebPartManager 控制項。ProxyWebPartManager 控制項
若已在主版網頁中宣告 WebPartManager 控制項,在某些於內容網頁中宣告靜態連接的特定情況下,會存在 ProxyWebPartManager 控制項。如需有關 ProxyWebPartManager 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 ProxyWebPartManager 類別。WebPartZone 控制項
包含並提供組成網頁的主要 UI 之 WebPart 控制項的整體版面配置。當您建立具有網頁組件控制項的網頁時,請使用此區域。網頁可以包含一或多個區域。CatalogZone 控制項
包含 CatalogPart 控制項 (DeclarativeCatalogPart 控制項、ImportCatalogPart 控制項和 PageCatalogPart 控制項)。此區域可用以建立網頁組件控制項的目錄,使用者可以從該目錄中選取要新增至網頁的控制項。如需有關 CatalogZone 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 CatalogZone 類別。ConnectionsZone 控制項
包含 WebPartConnection 控制項,並提供用以管理連線的 UI。如需有關 ConnectionsZone 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 ConnectionsZone 類別。EditorZone 控制項
包含 EditorPart 控制項 (AppearanceEditorPart 控制項、LayoutEditorPart 控制項、BehaviorEditorPart 控制項和 PropertyGridEditorPart 控制項)。此區域可讓使用者編輯及個人化網頁上的網頁組件控制項。如需有關 EditorZone 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 EditorZone 類別。ImportCatalogPart 控制項
為使用者提供使用者介面 (UI),以將控制項的定義檔案 (由包含狀態資訊之結構描述所定義的 XML 檔案) 上載至目錄,讓控制項得以新增至網頁。控制項本身不會出現在此類型目錄中,該目錄只是一種機制,可存取外部控制項的定義檔案,以將其新增至網頁。如需有關 ImportCatalogPart 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 ImportCatalogPart 類別。
全部衍生自 Part 類別的網頁組件 UI 控制項,會構成網頁組件網頁上的主要 UI。網頁組件控制項集合十分具有彈性,並為您提供了很多建立組件控制項的選項。除了建立自己的自訂網頁組件控制項之外,您還可以使用現有的 ASP.NET 伺服器控制項、使用者控制項或自訂伺服器控制項做為網頁組件控制項。
ASP.NET WebParts UI 控制項
AppearanceEditorPart 控制項
提供編輯器控制項,讓使用者可編輯相關聯 WebPart 控制項上的數個使用者介面 (UI) 屬性。如需有關 AppearanceEditorPart 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 AppearanceEditorPart 類別。BehaviorEditorPart 控制項
提供編輯器控制項,能讓使用者變更會影響相關聯 WebPart 或 GenericWebPart 控制項行為的屬性。如需有關 BehaviorEditorPart 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 BehaviorEditorPart 類別。DeclarativeCatalogPart 控制項
為開發人員提供了以宣告方式將一組伺服器控制項新增至網頁上之目錄的方法。使用 DeclarativeCatalogPart 控制項建立伺服器控制項目錄的好處在於不需要撰寫任何程式碼。網頁開發人員可完全以宣告 (或網頁持續性) 格式使用控制項,因此亦可使用控制項名稱。如需有關 DeclarativeCatalogPart 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 DeclarativeCatalogPart 類別。LayoutEditorPart 控制項
提供編輯器控制項,讓使用者可編輯相關聯 WebPart 控制項上的數個使用者介面 (UI) 屬性。如需有關 LayoutEditorPart 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 LayoutEditorPart 類別。PageCatalogPart 控制項
包含網頁上已關閉且可由使用者重新開啟 (新增回網頁) 的控制項。此目錄類型中的控制項為已從其他來源新增至網頁後,由使用者關閉的控制項。如需有關 PageCatalogPart 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 PageCatalogPart 類別。PropertyGridEditorPart 控制項
提供編輯器控制項,讓使用者可編輯相關聯 WebPart 控制項上的數個使用者介面 (UI) 屬性。如需有關 PropertyGridEditorPart 控制項在程式設計方面的詳細資訊,請參閱 MSDN Library 中的 PropertyGridEditorPart 類別。