如何:以声明方式创建 ASP.NET Web 控件模板

更新:2007 年 11 月

使用 Web 服务器控件(如 RepeaterDataListGridView 控件),可以指定各种模板。这些模板定义控件特定部分布局的 HTML 元素。例如,在 GridView 控件中,可以定义项、所选项、交替项等项的模板,以便使这些元素中的每个元素都能具有自定义的外观。

3326cdex.alert_note(zh-cn,VS.90).gif说明:

有关模板的背景信息,请参见 ASP.NET Web 服务器控件模板

使用 ASP.NET 语法创建 Web 服务器控件模板

  1. 在 ASP.NET 页的控件中,插入一个元素,以标识要创建的模板,如以下示例所示:

    <asp:DataList id="DataList1" runat="server">
      <ItemTemplate>
    
      </ItemTemplate>
    </asp:DataList>
    
    <asp:DataList id="DataList1" runat="server">
      <ItemTemplate>
    
      </ItemTemplate>
    </asp:DataList>
    
  2. 在模板元素中,添加 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>
    
  3. 对于要创建的每一模板重复步骤 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>
    

请参见

概念

ASP.NET Web 服务器控件模板

ASP.NET Web 服务器控件概述