本節中的主題描述如何使用 Visual Web Developer 工具箱的“HTML”選項卡上的 ASP.NET Web 服務器控件。
默認情況下,服務器無法使用 ASP.NET 網頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的不透明文本。但是,通過將 HTML 元素轉換成 HTML 服務器控件,可以將它們公開爲可以在基於服務器的代碼中進行編程的元素。
一、HTML Div 控件
工具箱的“HTML”選項卡上提供一個基於 HTML DIV 元素的 Div控件。
在 Visual Studio 中從工具箱添加到頁面上的 HTML 服務器控件只不過是已設置了某些屬性的 HTML 元素。也可以通過鍵入標記在“源”視圖中創建 HTML 元素。
默認情況下,服務器無法使用 Web 窗體頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的標記。但是,如果添加一個 id 屬性和屬性 runat="server",則 ASP.NET 將該元素識別爲頁面上的一個控件,並且可以用基於服務器的代碼對其進行編程。如果將一個 HTML DIV 元素轉換爲 ASP.NET 服務器控件,則該元素將被創建爲 HtmlGenericControl 類的實例。
呈現爲 DIV 元素的 ASP.NET 服務器控件如下所示:
·Panel
二、HTML 水平線規則控件
工具箱的“HTML”選項卡上提供一個基於 HTML hr 元素的“水平標尺”控件。
在 Visual Studio 中從工具箱添加到頁面上的 HTML 服務器控件只不過是已設置了某些屬性的 HTML 元素。也可以通過鍵入標記在“源”視圖中創建 HTML 元素。
默認情況下,服務器無法使用 Web 窗體頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的標記。但是,如果添加一個 id 屬性和屬性 runat="server",則 ASP.NET 將該元素識別爲頁面上的一個控件,並且可以用基於服務器的代碼對其進行編程。如果將一個 HTML hr 元素轉換爲 ASP.NET 服務器控件,則該元素將被創建爲 HtmlGenericControl 類的實例。
三、HTML 圖像 (Image) 控件
“工具箱”的“HTML”選項卡上提供一個基於 HTML img 元素的“Image”控件。
在 Visual Studio 中從工具箱添加到頁面上的 HTML 服務器控件只不過是已設置了某些屬性的 HTML 元素。也可以通過鍵入標記在“源”視圖中創建 HTML 元素。
默認情況下,服務器無法使用 Web 窗體頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的標記。但是,如果添加一個 id 屬性和屬性 runat="server",則 ASP.NET 將該元素識別爲頁面上的一個控件,並且可以用基於服務器的代碼對其進行編程。如果將一個 HTML img 元素轉換爲 ASP.NET 服務器控件,則該元素將被創建爲 HtmlImage 類的實例。
呈現爲 img 元素的 ASP.NET 服務器控件如下所示:
·Image
四、HTML 輸入控件
工具箱的“HTML”選項卡上提供下列基於 HTML INPUT 元素的控件:
·Input (Button) 控件: INPUT type="button" 元素
·Input (Checkbox) 控件:INPUT type="checkbox" 元素
·Input (File) 控件:INPUT type="file" 元素
·Input (Hidden) 控件:INPUT type="hidden" 元素
·Input (Password) 控件:INPUT type="password" 元素
·Input (Radio) 控件:INPUT type="radio" 元素
·Input (Reset) 控件:INPUT type="reset" 元素
·Input (Submit) 控件:INPUT type="submit" 元素
·Input (Text) 控件:INPUT type="text" 元素
在 Visual Studio 中從工具箱添加到頁面上的 HTML 服務器控件只不過是已設置了某些屬性的 HTML 元素。也可以通過鍵入標記在“源”視圖中創建 HTML 元素。
默認情況下,服務器無法使用 Web 窗體頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的標記。但是,如果添加一個 id 屬性和屬性 runat="server",則 ASP.NET 將該元素識別爲頁面上的一個控件,並且可以用基於服務器的代碼對其進行編程。
HTML INPUT 元素與其他 HTML 元素不同,在轉換爲 ASP.NET 服務器控件時,它不創建爲 HtmlInputControl 類的實例。您無法直接創建 HtmlInputControl 類的實例。而是通過下表中所列的類來繼承此類。
下表列出在標記包含 runat="server" 和 id 屬性時,用來將 INPUT 元素實例化爲 ASP.NET 服務器控件的類型。
服務器控件 |
類型 |
Button 控件 |
|
CheckBox 控件 |
|
File Field 控件 |
|
Hidden 控件 |
|
Password 控件 |
|
Radio Button 控件 |
|
Reset Button 控件 |
|
Submit Button 控件 |
|
Text Field 控件 |
呈現爲 INPUT 元素的 ASP.NET 服務器控件如下所示:
Button 、CheckBox 、FileUpload 、HiddenField 、ImageButton 、RadioButton 、
TextBox
五、HTML 選擇控件
工具箱的“HTML”選項卡上提供一個基於 HTML SELECT 元素的 Select 控件。
在 Visual Studio 中從工具箱添加到頁面上的 HTML 服務器控件只不過是已設置了某些屬性的 HTML 元素。也可以通過鍵入標記在“源”視圖中創建 HTML 元素。
默認情況下,服務器無法使用 Web 窗體頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的標記。但是,如果添加一個 id 屬性和屬性 runat="server",則 ASP.NET 將該元素識別爲頁面上的一個控件,並且可以用基於服務器的代碼對其進行編程。如果將一個 HTML SELECT 元素轉換爲 ASP.NET 服務器控件,則該元素將被創建爲 HtmlSelect 類的實例。
呈現爲 SELECT 元素的 ASP.NET 服務器控件如下所示:
ListBox 、DropDownList
六、HTML 表控件
工具箱的“HTML”選項卡上提供一個基於 HTML TABLE 元素的 Table 控件。
默認情況下,將 Table 控件添加到 HTML 頁或 Web 窗體頁時,表將佔據三行乘三列的範圍。您可以使用“佈局”菜單上的命令自定義列數和行數。
在 Visual Studio 中從工具箱添加到頁面上的 HTML 服務器控件只不過是已設置了某些屬性的 HTML 元素。也可以通過鍵入標記在“源”視圖中創建 HTML 元素。
默認情況下,服務器無法使用 Web 窗體頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的標記。但是,如果添加一個 id 屬性和屬性 runat="server",則 ASP.NET 將該元素識別爲頁面上的一個控件,並且可以用基於服務器的代碼對其進行編程。如果將一個 HTML TABLE 元素轉換爲 ASP.NET 服務器控件,則該元素將被創建爲 HtmlTable 類的實例。
可呈現爲 TABLE 元素的 ASP.NET 服務器控件如下所示:
·Calendar
·CheckBoxList(如果 RepeatLayout 屬性設置爲 Table)
·DataList
·GridView
·RadioButtonList(如果 RepeatLayout 屬性設置爲 Table)
·Table
七、HTML 文本區域控件
工具箱的“HTML”選項卡上提供一個基於 HTML TEXTAREA 元素的 Text Area(文本區域)控件。
在 Visual Studio 中從工具箱添加到頁面上的 HTML 服務器控件只不過是已設置了某些屬性的 HTML 元素。也可以通過鍵入標記在“源”視圖中創建 HTML 元素。
默認情況下,服務器無法使用 Web 窗體頁上的 HTML 元素;這些元素被視爲傳遞給瀏覽器的標記。但是,如果添加一個 id 屬性和屬性 runat="server",則 ASP.NET 將該元素識別爲頁面上的一個控件,並且可以用基於服務器的代碼對其進行編程。如果將一個 HTML TEXTAREA 元素轉換爲 ASP.NET 服務器控件,則該元素將被創建爲 HtmlTextArea 類的實例。
呈現爲 TEXTAREA 元素的 ASP.NET 服務器控件如下所示:
TextBox(如果 TextMode 屬性設置爲 MultiLine)