ASP.NET控件設計器淺析
本簡介解釋了ASP.NET控件設計器的功能、基本設計器類及其功能和使用設計器的方案。
一、ASP.NET控件設計器功能
ASP.NET在繼續支持早期版本的控件設計器結構的同時,還進行了重大的改進。
◆ASP.NET控件設計器之基于區域的編輯。
區域是控件設計時視圖中的可編輯區域。該功能提供了設計時對控件內容的WYSIWYG編輯。
◆ASP.NET控件設計器之操作表。
操作表是控件的頁面開發人員可以在設計時UI中使用的任務菜單。例如,控件的設計時視圖可以提供可用任務菜單,包括自動設置控件格式的任務。
◆ASP.NET控件設計器之數據源和數據綁定設計器。
數據源控件設計器使得頁面開發人員可以配置數據源控件。數據綁定控件設計器使得頁面開發人員可以配置數據綁定控件。提供了一些功能,可用于實現數據源設計器和數據綁定設計器之間的相互通信。
◆ASP.NET控件設計器之簡化的模板編輯。
為模板化控件(如GridView)的設計時編輯創建UI的模型,已極大地簡化和修改,使得控件開發人員可以選擇用區域執行自己的模板編輯。
◆ASP.NET控件設計器之簡化的對象模型。
已簡化使用設計時呈現的對象模型,使得開發人員必須關心的***重要的問題是生成設計時HTML。幾個新的基類提供對簡化的對象模型的訪問:ControlDesigner、ContainerControlDesigner和CompositeControlDesigner。
◆ASP.NET控件設計器之訂閱主機服務。
控件設計器可以訂閱和使用宿主環境所提供的各種服務。例如,控件設計器可以使用VisualStudio2005服務實現以下功能:提供對數據的訪問、提供對配置的訪問、在設計時以編程方式向頁面添加控件、在設計器中處理Click事件、在設計圖面上進行繪制以及訪問其他服務(如設計器狀態)。
二、ASP.NET控件設計器之基本設計器類
通過充當運行時控件和宿主環境之間的調節器,控件設計器啟用Web服務器控件的設計時呈現。在宿主環境內部,設計器提供下面的功能幫助您為控件的用戶創建設計時UI:
◆ASP.NET控件設計器之設計時呈現和內容。
控件設計器啟用多種呈現,包括簡單呈現和復雜呈現。基于區域的編輯和模板編輯是可以為控件提供的多種設計時UI的示例。還可以在控件上提供列編輯或多個運行時視圖,因此設計時使用該控件的開發人員可以就如何在運行時呈現控件從一組選項中進行選擇。
◆ASP.NET控件設計器之其他設計時類。
除了設計器類之外,還有與類型或屬性關聯且執行類型轉換(從字符串到值的轉換)的類型轉換器類。還有為編輯屬性提供專用UI的UI類型編輯器類。例如,屬性窗格中的顏色選取器下拉列表使您可以為Web控件上的顏色屬性選擇一種顏色。還可以創建專用的組件編輯器,它是提供對控件的屬性進行整體編輯的類。
◆ASP.NET控件設計器之關聯控件的數據的持久性。
控件的內部屬性和內容可以保持,因此該控件及其子控件在設計時環境中可保持狀態。這由標記中配置控件定義的方式控制。
為Web服務器控件創建控件設計器時,有幾個可能要使用的基類:
(1)ControlDesigner
可提供對Web服務器控件的設計時支持的基類。
(2)ContainerControlDesigner
一個簡單的包容控件的基類,可提供對控件的子控件集合的編輯功能。此設計器提供一個可自由編輯的區域,并且宿主(例如VisualStudio2005)會自動提供所有呈現。
(3)CompositeControlDesigner
可提供對呈現復合Web服務器控件的設計時支持的基類。它還提供對子控件呈現的編程控制。
(4)DataSourceDesigner、BaseDataBoundControlDesigner和HierarchicalDataSourceDesigner
這些基類提供對數據源和數據綁定控件的設計時支持,并且相互之間可以通信。
ASP.NET控件設計器的功能、基本設計器類就向你介紹到這里,希望通過介紹使你能夠更加認識ASP.NET控件設計器。
【編輯推薦】