如何:使用 ASP.NET 语法将服务器控件添加到 ASP.NET 网页
更新:2007 年 11 月
您可以通过在 .aspx 文件中直接声明 Web 服务器控件将它添加到页中。
说明: |
---|
有关 ASP.NET 网页上控件的背景信息,请参见 ASP.NET Web 服务器控件概述。 |
以声明方式添加控件
如果您位于可视化设计器中,请切换到源编辑视图。
将表示该控件的元素键入 .aspx 文件。您使用的具体语法取决于要添加的控件,但通常适用下面的情况:
控件必须包含 runat="server" 属性。
设置了控件的 ID 属性,除非该控件是某个复杂控件的一部分且重复出现(如在 GridView、FormView、DetailsView、Repeater 或 DataList 控件中一样)。
Web 服务器控件是使用引用 asp 命名空间的 XML 标记声明的。
控件声明必须正确结束。您可以指定显式结束标记,或者如果控件不具有子元素,也可以指定一个自结束标记。唯一的例外是不可以包含子元素的 HTML 输入控件,如输入控件(例如,HtmlInputText 服务器控件声明语法、HtmlImage 服务器控件声明性语法和 HtmlButton 服务器控件声明性语法)。
控件属性声明为属性。
下面的示例显示 Web 服务器控件的典型声明:
<!-- Textbox Web server control --> <asp:textbox id="TextBox1" runat="Server" Text=""></asp:textbox> <!-- Same, but with self-closing element --> <asp:textbox id="Textbox2" runat="Server" Text="" /> <!-- Web DropDownList control, which contains subelements --> <asp:DropDownList id="DropDown1" runat="server"> <asp:ListItem Value="0">0</asp:ListItem> <asp:ListItem Value="1">1</asp:ListItem> <asp:ListItem Value="2">2</asp:ListItem> <asp:ListItem Value="3">3</asp:ListItem> </asp:DropDownList> <asp:Repeater id="Repeater2" runat="server"> <HeaderTemplate> Company data: </HeaderTemplate> <ItemTemplate> <asp:Label ID="Label1" runat="server" Font-Names="verdana" Font-Size="10pt" Text='<%# Eval("Name") %>' /> ( <asp:Label ID="Label2" runat="server" Font-Names="verdana" Font-Size="10pt" Text='<%# Eval("Ticker") %>'/> ) </ItemTemplate> <SeparatorTemplate> , </SeparatorTemplate> </asp:Repeater>
<!-- Textbox Web server control --> <asp:textbox id="TextBox1" runat="Server" Text=""></asp:textbox> <!-- Same, but with self-closing element --> <asp:textbox id="Textbox2" runat="Server" Text="" /> <!-- Web DropDownList control, which contains subelements --> <asp:DropDownList id="DropDown1" runat="server"> <asp:ListItem Value="0">0</asp:ListItem> <asp:ListItem Value="1">1</asp:ListItem> <asp:ListItem Value="2">2</asp:ListItem> <asp:ListItem Value="3">3</asp:ListItem> </asp:DropDownList> <asp:Repeater id="Repeater2" runat="server"> <HeaderTemplate> Company data: </HeaderTemplate> <ItemTemplate> <asp:Label ID="Label1" runat="server" Font-Names="verdana" Font-Size="10pt" Text='<%# Eval("Name") %>' /> ( <asp:Label ID="Label2" runat="server" Font-Names="verdana" Font-Size="10pt" Text='<%# Eval("Ticker") %>'/> ) </ItemTemplate> <SeparatorTemplate> , </SeparatorTemplate> </asp:Repeater>
有关特定 Web 服务器控件的声明语法的信息,请参见 Web 服务器控件语法。
说明: 如果页设计器不能正确地呈现 Web 服务器控件,它将显示一个含有文字“创建控件时出错”的灰色框。这通常意味着该控件的 ASP.NET 语法不正确,例如,如果某 Web 服务器控件元素中缺少了 runat="server" 属性,则显示此错误。
请参见
任务
如何:使用 ASP.NET 语法设置 ASP.NET 服务器控件样式属性