GridView控件中的一個重要的列類型是TemplateField,它可以使用模板完全定制列的內容
TemplateField提供了6個不同的模板,用於定制列的指定區域,或創建列中的單元格能進入的模式,如編輯模式。
表7-6列出了這些模板。
表 7-6
模 板 名 |
說 明 |
ItemTemplate |
用於顯示數據綁定控件的TemplateField中的一項,普通列 |
AlternatingItemTemplate |
用於顯示TemplateField的替換項 |
EditItemTemplate |
用於顯示編輯模式下的TemplateField項 |
InsertItemTemplate |
用於顯示插入模式下的TemplateField項 |
HeaderTemplate |
用於顯示TemplateField的標題部分 |
FooterTemplate |
用於顯示TemplateField的腳標部分 |
大家可以看到,Templatefield分為兩個模板—ItemTemplate自定義普通模版用Lable標簽顯示數據字段firstName,EditItemTemplate編輯時模版用textbox文本框顯示數據字段firstName.大家可以看到在兩個模板中都都有<%#bind("fieldname")%>語句,用來指定要綁定的數據字段
<asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" /> <asp:TemplateField HeaderText="FirstName" SortExpression="FirstName"> <EditItemTemplate> <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("FirstName") %>'></asp:TextBox> </EditItemTemplate> <ItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# Bind("FirstName") %>'></asp:Label> </ItemTemplate> </asp:TemplateField>