ASP.NET 2.0中添加GridView到頁面
添加SupplierListMaster.aspx 和 ProductsForSupplierDetails.aspx后,接下來就是要在SupplierListMaster.aspx頁面上創(chuàng)建一個(gè)顯示供應(yīng)商的GridView. 添加一個(gè)GridView到頁面上并綁定到一個(gè)新的ObjectDataSource, 這個(gè)ObjectDataSource應(yīng)該使用SuppliersBLL類的GetSuppliers()方法返回所有供應(yīng)商。
添加GridView: 選擇 SuppliersBLL 類
添加GridView: 配置ObjectDataSource 使用GetSuppliers() 方法
我們需要在每個(gè)GridView行中包含一個(gè)”查看產(chǎn)品”鏈接,單擊時(shí)該鏈接會(huì)轉(zhuǎn)到ProductsForSupplierDetails.aspx頁面, 并在查詢字符串(querystring)傳遞選定行的SupplierID值.比如如果用戶單擊了供應(yīng)商Tokyo Traders(SupplierID值為4)的”查看產(chǎn)品”鏈接,將會(huì)轉(zhuǎn)到ProductsForSupplierDetails.aspx?SupplierID=4.
要實(shí)現(xiàn)該功能, 給GridView添加一個(gè)HyperLinkField列, 它會(huì)為每個(gè)GridView行增加一個(gè)鏈接. 首先在GridView智能標(biāo)記上單擊編輯列鏈接. 然后在左上角的列表中選擇HyperLinkField并單擊新增把HyperLinkField添加到GridView的字段列表中.
添加GridView: 添加 HyperLinkField 到GridView
HyperLinkField可以被配置為在每一個(gè)GridView行中使用相同的文本或URL值,或是讓這些值基于綁定到特定行的數(shù)據(jù)值. 要指定一個(gè)所有行都一樣的靜態(tài)值使用HyperLinkField的Text或NavigateUrl屬性. 因?yàn)槲覀兿胱屆恳恍械逆溄游谋疽恢?設(shè)置HyperLinkField的Text屬性為”查看產(chǎn)品”.
添加GridView: 設(shè)置HyperLinkField的Text屬性為”查看產(chǎn)品”
要讓text 或URL基于綁定到GridView行的底層數(shù)據(jù), 可能通過DataTextField 或 DataNavigateUrlFields指定Text或URL要從中獲取數(shù)據(jù)的數(shù)據(jù)字段. DataTextField只能設(shè)置為一個(gè)單一的數(shù)據(jù)字段; DataNavigateUrlFields可以設(shè)置為一個(gè)以逗號分隔的數(shù)據(jù)字段列表. 我們需要讓TEXT或URL基于當(dāng)前行的數(shù)據(jù)字段值和一些標(biāo)記. 比如在這篇教程中,我們希望 HyperLinkField的鏈接URL是ProductsForSupplierDetails.aspx?SupplierID=supplierID. 其中supplierID是GridView的每個(gè)行的supplierID值. 注意我們需要靜態(tài)值和數(shù)據(jù)驅(qū)動(dòng)值. ProductsForSupplierDetails.aspx?SupplierID=這部分是靜態(tài)值.而supplierID部分便是數(shù)據(jù)驅(qū)動(dòng)的, 它的值是每一行的SupplierID值.
要指定靜態(tài)值和數(shù)據(jù)驅(qū)動(dòng)值的混合物, 使用DataTextFormatString和DataNavigateUrlFormatString屬性. 在這些屬性中按需要輸入靜態(tài)文本,要顯示DataTextField或DataNavigateUrlFields屬性中特定的字段時(shí)使用{0}標(biāo)記. 如果DataNavigateUrlFields中有多個(gè)字段,在需要第一個(gè)字段時(shí)使用{0}, 第二個(gè)字段使用{1},以此類推.
對于我們這篇教程來說, 我們需要設(shè)置DataNavigateUrlFields為SupplierID, 因?yàn)槲覀冃枰褂迷摂?shù)據(jù)字段自定義每行的鏈接.
添加GridView: 配置HyperLinkField 使用合適的基于SupplierID 的鏈接地址.
添加了HyperLinkField后, 可以自定義及重新排列GridView的字段. 下面是我做了修改后的標(biāo)記 (markup):
在瀏覽器中訪問一下SupplierListMaster.aspx. 如圖7所示, 頁面列出了所有的供應(yīng)商,每個(gè)供應(yīng)商包含”查看產(chǎn)品”鏈接. 單擊”查看產(chǎn)品”鏈接會(huì)轉(zhuǎn)到ProductsForSupplierDetails.aspx, 并在查詢字符串中傳遞供應(yīng)商的SupplierID值.
添加GridView: 每個(gè)供應(yīng)商都包含”查看產(chǎn)品”鏈接.
【編輯推薦】