GridView綁定數(shù)據(jù)的實(shí)現(xiàn)
當(dāng)你需要使用一些TemplateField來自定義顯示時(shí),我發(fā)現(xiàn)最簡(jiǎn)單的就是先創(chuàng)建一個(gè)僅包含BoundField的GridView控件,然后添加一些TemplateField,如果需要的話,也可以將某些BoundField直接轉(zhuǎn)換成TemplateField。好了,讓我們開始本節(jié)教程吧。首先,通過設(shè)計(jì)器往頁面上添加一個(gè)GridView控件,并將一個(gè)返回雇員信息的ObjectDataSource綁定到它上面。這些步驟將創(chuàng)建一個(gè)帶有一些BoundField的GridView,這些BoundField對(duì)應(yīng)雇員信息中不同的字段。
打開GridViewTemplateField.aspx,并從工具箱中拖一個(gè)GridView到設(shè)計(jì)器上。從GridView的智能標(biāo)簽(smart tag)上選擇并添加一個(gè)新的調(diào)用EmployeesBLL 類的GetEmployees()方法的ObjectDataSource控件。
GridView綁定數(shù)據(jù):添加一個(gè)新的調(diào)用GetEmployees()方法的ObjectDataSource控件
用這種方式進(jìn)行GridView綁定數(shù)據(jù)將會(huì)自動(dòng)的為雇員信息的每一個(gè)屬性添加一個(gè)BoundField:EmployeeID、LastName、FirstName、Title、HireDate、ReportsTo以及Country。在這個(gè)報(bào)表中,我們不希望看到EmployeeID、ReportsTo以及Country屬性。要?jiǎng)h除這些BoundField的話,你可以:
·使用字段對(duì)話框 - 在GridView的智能標(biāo)簽的彈出菜單中點(diǎn)擊“編輯列”(Edit Columns)。然后,在左下角的列表中選中你想要?jiǎng)h除的BoundField并點(diǎn)擊那個(gè)帶紅叉的按鈕,就可以刪除這個(gè)BoundField了。
·手工編輯GridView的聲明語句 - 在源視圖(Source view)中,找到你想要?jiǎng)h除的BoundField,就是那些< asp:BoundField>元素,刪了就行了。
在你刪了EmployeeID、ReportsTo和Country等BoundField之后,你的GridView的標(biāo)記語言代碼應(yīng)該像這個(gè)樣子:
- < asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="EmployeeID"
- DataSourceID="ObjectDataSource1">
- < Columns>
- < asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" />
- < asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" />
- < asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />
- < asp:BoundField DataField="HireDate" HeaderText="HireDate" SortExpression="HireDate" />
- < /Columns>
- < /asp:GridView>
讓我們花點(diǎn)時(shí)間在瀏覽器中來看看我們的成果。這時(shí),你將看到一個(gè)表格,表格中每一個(gè)記錄都是一個(gè)雇員的信息,一共有四列:一個(gè)是雇員的姓,一個(gè)是名字,一個(gè)是頭銜,還有一個(gè)是他們的受雇日期。
GridView綁定數(shù)據(jù):每一個(gè)雇員信息都顯示了LastName、FirstName、Title和HireDate
【編輯推薦】