更新:2007 年 11 月
FormView、DataList、Repeater 和 ListView Web 伺服器控制項會使用範本顯示資料,並且擷取使用者輸入以插入、更新或刪除資料。此外,您也可以搭配 GridView 和 DetailsView 控制項使用範本以自訂資料配置。
您可以將範本化控制項的 DataSourceID 屬性設定為資料來源控制項的 ID,以便將範本化控制項繫結至資料來源控制項,例如 LinqDataSource、ObjectDataSource 或 SqlDataSource 控制項。然後可以使用範本中的 Eval 和 Bind 函式,繫結至資料來源的資料。如需詳細資訊,請參閱資料繫結運算式語法。
若要使用範本將控制項繫結至資料
將資料來源控制項,例如 SqlDataSource 控制項加入網頁,如同下列範例所示:
<asp:SqlDataSource ID="SqlDataSource1" SelectCommand="SELECT * FROM [Products]" ConnectionString="<%$ ConnectionStrings:NorthwindConnection %>" RunAt="server"> </asp:SqlDataSource><asp:SqlDataSource ID="SqlDataSource1" SelectCommand="SELECT * FROM [Products]" ConnectionString="<%$ ConnectionStrings:NorthwindConnection %>" RunAt="server"> </asp:SqlDataSource>加入支援範本的控制項,例如 ASP.NET FormView 控制項。
在步驟 1 中將範本化控制項的 DataSourceID 屬性設定為資料來源控制項的 ID,如同下列範例所示:
<asp:FormView ID="FormView1" DataSourceID="SqlDataSource1" DataKeyNames="ProductID" Runat="server"> </asp:FormView>將範本加入範本化控制項,然後填入控制項和標記。
若要顯示資料,請使用 Eval 函式做為屬性設定並且參考繫結資料欄位。在用來插入或編輯資料的範本中,請使用 Bind 函式參考資料繫結欄位,如同下列範例中所示:
<asp:FormView ID="FormView1" DataSourceID="SqlDataSource1" DataKeyNames="ProductID" RunAt="server"> <ItemTemplate> <table> <tr><td align="right"><b>Product ID:</b></td> <td><%# Eval("ProductID") %></td></tr> <tr><td align="right"><b>Product Name:</b></td> <td><%# Eval("ProductName") %></td></tr> <tr><td align="right"><b>Category ID:</b></td> <td><%# Eval("CategoryID") %></td></tr> <tr><td align="right"><b>Quantity Per Unit:</b></td><td><%# Eval("QuantityPerUnit") %></td></tr> <tr><td align="right"><b>Unit Price:</b></td> <td><%# Eval("UnitPrice") %></td></tr> </table> </ItemTemplate> </asp:FormView><asp:FormView ID="FormView1" DataSourceID="SqlDataSource1" DataKeyNames="ProductID" RunAt="server"> <ItemTemplate> <table> <tr><td align="right"><b>Product ID:</b></td> <td><%# Eval("ProductID") %></td></tr> <tr><td align="right"><b>Product Name:</b></td> <td><%# Eval("ProductName") %></td></tr> <tr><td align="right"><b>Category ID:</b></td> <td><%# Eval("CategoryID") %></td></tr> <tr><td align="right"><b>Quantity Per Unit:</b></td><td><%# Eval("QuantityPerUnit") %></td></tr> <tr><td align="right"><b>Unit Price:</b></td> <td><%# Eval("UnitPrice") %></td></tr> </table> </ItemTemplate> </asp:FormView>每個 Web 伺服器控制項支援不同的範本。例如,Repeater 控制項支援 ItemTemplate 和 AlternatingItemTemplate 以便使用替代控制項、樣式和標記顯示資料。如需 Web 伺服器控制項和支援範本的詳細資訊,請參閱 ASP.NET 資料繫結 Web 伺服器控制項概觀。
請參閱
工作
HOW TO:使用 SqlDataSource 控制項連接到 ODBC 資料庫 (Visual Studio)