如何:以声明方式创建 ASP.NET Web 控件模板
更新:2007 年 11 月
使用 Web 服务器控件(如 Repeater、DataList 和 GridView 控件),可以指定各种模板。这些模板定义控件特定部分布局的 HTML 元素。例如,在 GridView 控件中,可以定义项、所选项、交替项等项的模板,以便使这些元素中的每个元素都能具有自定义的外观。
说明: |
---|
有关模板的背景信息,请参见 ASP.NET Web 服务器控件模板 |
使用 ASP.NET 语法创建 Web 服务器控件模板
在 ASP.NET 页的控件中,插入一个元素,以标识要创建的模板,如以下示例所示:
<asp:DataList id="DataList1" runat="server"> <ItemTemplate> </ItemTemplate> </asp:DataList>
<asp:DataList id="DataList1" runat="server"> <ItemTemplate> </ItemTemplate> </asp:DataList>
在模板元素中,添加 HTML 文本和其他控件作为模板的内容。使用常规语法包括嵌入式控件的属性和数据绑定值,如以下示例所示:
<asp:DataList id="DataList3" runat="server"> <ItemTemplate> Name: <asp:Label ID="Label2" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'/> </ItemTemplate> </asp:DataList>
<asp:DataList id="DataList3" runat="server"> <ItemTemplate> Name: <asp:Label ID="Label2" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'/> </ItemTemplate> </asp:DataList>
对于要创建的每一模板重复步骤 1 和 2。
下面的示例演示 DataList Web 服务器控件的完整声明,同时为 Header、Item 和 Separator 模板声明了简单模板。
<asp:datalist id="DataList2" runat="server" > <HeaderTemplate> Items matching your query: </HeaderTemplate> <ItemTemplate> Name: <asp:Label id="Label1" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'></asp:Label> </ItemTemplate> <SeparatorTemplate> <br /><hr /> </SeparatorTemplate> </asp:datalist>
<asp:datalist id="DataList2" runat="server" > <HeaderTemplate> Items matching your query: </HeaderTemplate> <ItemTemplate> Name: <asp:Label id="Label1" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName")%>'></asp:Label> </ItemTemplate> <SeparatorTemplate> <br /><hr /> </SeparatorTemplate> </asp:datalist>