本节中的主题描述如何使用 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 控件 |
HtmlInputButton |
CheckBox 控件 |
HtmlInputCheckBox |
File Field 控件 |
HtmlInputFile |
Hidden 控件 |
HtmlInputHidden |
Password 控件 |
HtmlInputPassword |
Radio Button 控件 |
HtmlInputRadioButton |
Reset Button 控件 |
HtmlInputReset |
Submit Button 控件 |
HtmlInputSubmit |
Text Field 控件 |
HtmlInputText |
呈现为 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)