首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

使用 ASP.NET 語法建立 Web 伺服器控制項模板

     編輯:關於ASP.NET

在 .aspx 頁面中,以宣告式語法為資料繫結控制項 (DataList、Repeater、GridView) 定義模板,包含 ItemTemplate、HeaderTemplate、SeparatorTemplate 等,並支援資料繫結運算式 (<%# ... %>) 與嵌入控制項。

基本語法


<asp:DataList ID="DataList1" runat="server">
    <ItemTemplate>
        <!-- 模板內容 -->
    </ItemTemplate>
</asp:DataList>

模板內容:HTML + 控制項 + 資料繫結


<ItemTemplate>
    Name: <asp:Label runat="server" Text='<%# Container.DataItem %>' />
</ItemTemplate>

完整範例:DataList 多模板宣告


<asp:DataList ID="DataList1" runat="server">
    <HeaderTemplate>
        符合查詢的項目:
    </HeaderTemplate>
    <ItemTemplate>
        Name: <asp:Label ID="Label1" runat="server"
            Text='<%# DataBinder.Eval(Container, "DataItem.EmployeeName") %>'>
        </asp:Label>
    </ItemTemplate>
    <SeparatorTemplate>
        <br><hr>
    </SeparatorTemplate>
</asp:DataList>

常見模板類型

模板用途
HeaderTemplate資料列表前的標題區
ItemTemplate每一筆資料的呈現 (必要)
AlternatingItemTemplate交替項目樣式 (如斑馬紋)
SeparatorTemplate項目間分隔符
FooterTemplate資料列表後的尾部區
EditItemTemplate編輯模式下的呈現
SelectedItemTemplate選取項目突顯

設計工具錯誤提示

若設計介面顯示灰色框與「建立控制項時出錯」,通常為語法錯誤:
- 遺漏 runat="server"
- 標籤未正確閉合
- 資料繫結運算式語法錯誤
滑鼠懸停錯誤圖示可見詳細訊息。

最佳實務

  • 盡量使用強型別資料繫結 (<%# ((Employee)Container.DataItem).Name %>) 取代 DataBinder.Eval 提升效能。
  • 複雜模板可提取為 UserControl (.ascx),再於模板中引用 <uc:MyTemplate runat="server" />。
  • 模板內控制項 ID 需唯一,Container 屬性提供 DataItem、ItemIndex 等上下文資訊。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved