日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
使用ASP.NET中的GridView和ObjectDataSource

在主/從報(bào)表的最后一步是列出與選定的類別相關(guān)聯(lián)的產(chǎn)品. 要實(shí)現(xiàn)該功能,在頁(yè)面上增加一個(gè)GridView控件然后創(chuàng)建一個(gè)數(shù)據(jù)源控件(ObjectDataSource)并命名為productsDataSource.讓productsDataSource控件從ProductsBLL類的GetProductsByCategoryID(categoryID)獲取數(shù)據(jù).

發(fā)展壯大離不開廣大客戶長(zhǎng)期以來(lái)的信賴與支持,我們將始終秉承“誠(chéng)信為本、服務(wù)至上”的服務(wù)理念,堅(jiān)持“二合一”的優(yōu)良服務(wù)模式,真誠(chéng)服務(wù)每家企業(yè),認(rèn)真做好每個(gè)細(xì)節(jié),不斷完善自我,成就企業(yè),實(shí)現(xiàn)共贏。行業(yè)涉及成都白烏魚等,在網(wǎng)站建設(shè)公司網(wǎng)絡(luò)營(yíng)銷推廣、WAP手機(jī)網(wǎng)站、VI設(shè)計(jì)、軟件開發(fā)等項(xiàng)目上具有豐富的設(shè)計(jì)經(jīng)驗(yàn)。

GridView和ObjectDataSource: 選擇GetProductsByCategoryID(categoryID) 方法

選擇該方法之后,數(shù)據(jù)源控件(ObjectDataSource)向?qū)?huì)提示我們定義該方法的categoryID參數(shù)值. 要使用categories DorpDownList中選擇的值, 設(shè)置參數(shù)源為Control, 設(shè)置ControlID為Categories.

GridView和ObjectDataSource: categoryID 參數(shù)設(shè)置為Categories DropDownList的值

花一點(diǎn)時(shí)間在瀏覽器中檢查一下我們前面所做的工作. 第一次訪問頁(yè)面時(shí),那些屬于已選擇類別(Beverages)的產(chǎn)品已經(jīng)顯示出來(lái)了(如圖9), 但是當(dāng)改變DropDownList時(shí)并沒有更新產(chǎn)品數(shù)據(jù).這是由于必須引發(fā)一次回發(fā)(postback)GridView才會(huì)更新.有兩個(gè)方法可以實(shí)現(xiàn)(兩種方法都不需要寫任何代碼):

? 設(shè)置 categories 的AutoPostBack 屬性為 True. (你可以選中DropDownList’s smart tag 上的Enable AutoPostBack 選項(xiàng).) 這樣,只要用戶改變了DropDownList的選擇項(xiàng)都會(huì)引起一次回發(fā). 所以, 當(dāng)用戶在DropDownList中選擇了一個(gè)新的類別就會(huì)引起一次回發(fā),GridView 也會(huì)隨著新選擇的類別更新產(chǎn)品數(shù)據(jù). (在本教程中我們使用此方法.)

? DropDownList后面添加一個(gè)按鈕控件.  設(shè)置他的Text 屬性為”刷新”或類似的文本.使用這種方法, 用戶需要選擇一個(gè)新的類別然后單擊該按鈕.單擊按鈕將會(huì)引起一次回發(fā)并更新GridView顯示已選擇類別的產(chǎn)品.圖9和圖10演示了運(yùn)行后的主/從報(bào)表.

GridView和ObjectDataSource: 第一次訪問該頁(yè)面時(shí), 顯示Beverage 的產(chǎn)品

GridView和ObjectDataSource: 選擇一個(gè)新的產(chǎn)品,自動(dòng)引起一次回發(fā)并更新GridView

增加”選擇類別”列表項(xiàng)

第一次訪問FilterByDropDownList.aspx 頁(yè)時(shí),類別DropDownList中第一個(gè)數(shù)據(jù)項(xiàng)(Beverages)默認(rèn)是選中的, GridView中顯示的也是beverage類別的產(chǎn)品. 比起顯示第一個(gè)類別的產(chǎn)品, 我們可以為DropDownList 添加一個(gè)默認(rèn)選擇項(xiàng),比如 “—選擇類別 --”,這樣也許更友好一些.要給DropDownList增加一個(gè)新的數(shù)據(jù)項(xiàng), 在屬性窗口中單擊Items 屬性的省略號(hào)圖標(biāo). 添加一個(gè)新的數(shù)據(jù)項(xiàng)并設(shè)置Text 為“—選擇類別--”設(shè)置Value 為-1.

GridView和ObjectDataSource:  增加 “—選擇類別--” 數(shù)據(jù)項(xiàng)

除了上面的方法,你還可以使用下面的標(biāo)記性語(yǔ)言(markup)為DorpDownList添加一個(gè)數(shù)據(jù)項(xiàng):

 
 
 
 
  1. < asp:DropDownList ID="categories" runat="server" AutoPostBack="True" DataSourceID="categoriesDataSource" 
  2.     DataTextField="CategoryName" DataValueField="CategoryID" EnableViewState="False">  
  3.     < asp:ListItem Value="-1">-- Choose a Category --< /asp:ListItem>  
  4. < /asp:DropDownList> 

另外,我們需要把DropDownList控件的AppendDataBoundItems屬性設(shè)置為True,因?yàn)閿?shù)據(jù)源控件中的類別數(shù)據(jù)綁定到DropDownList 時(shí), 將會(huì)覆蓋所有的手工增加的列表項(xiàng),除非你的AppendDataBoundItems屬性設(shè)置True.

GridView和ObjectDataSource: 設(shè)置AppendDataBoundItems 屬性為True

這樣,第一次訪問該頁(yè)面時(shí), ”—選擇類別—“數(shù)據(jù)項(xiàng)是被選中并且不顯示任何產(chǎn)品.

GridView和ObjectDataSource: 頁(yè)面第一次加載時(shí)不顯示產(chǎn)品

沒有顯示產(chǎn)品的原因是由于”—選擇類別—“項(xiàng)被選中,該數(shù)據(jù)項(xiàng)的值是-1, 而數(shù)據(jù)庫(kù)中不存在CategoryID為-1的產(chǎn)品. 如果這正是你想要的那現(xiàn)在就可以打完收工了, 如果你希望在"--選擇類別--"項(xiàng)選中時(shí)顯示所有類別的產(chǎn)品,在ProductsBLL類中自定義GetProductsByCategoryID(categoryID)方法,如果categoryID參數(shù)值小于0則調(diào)用GetProducts()方法:

 
 
 
 
  1. public Northwind.ProductsDataTable GetProductsByCategoryID(int categoryID)  
  2. {  
  3.     if (categoryID <  0)  
  4.         return GetProducts();  
  5.     else 
  6.         return Adapter.GetProductsByCategoryID(categoryID);  

在這里使用的技巧與在后面的[聲明式語(yǔ)法]教程中顯示全部供應(yīng)商的相似,盡管在這個(gè)例子中我們使用了-1而不是使用null來(lái)指示是否應(yīng)該獲取全部記錄. 這是因?yàn)镚etProductsByCategoryID(categoryID)中的categoryID參數(shù)需要一個(gè)整型值,與之相反,在[聲明式語(yǔ)法]教程中我們傳入了一個(gè)字符串參數(shù).

圖14 顯示了當(dāng)”—選擇類別—“項(xiàng)選中時(shí)FilterByDropDownList.aspx頁(yè)面的截屏. 此時(shí),所有類型的產(chǎn)品默認(rèn)全部顯示, 用戶可以通過選擇特定的類別來(lái)縮小顯示范圍

GridView和ObjectDataSource: 默認(rèn)情況下顯示所有產(chǎn)品


當(dāng)前標(biāo)題:使用ASP.NET中的GridView和ObjectDataSource
瀏覽路徑:http://m.5511xx.com/article/cojeiic.html