組合.NET數(shù)據(jù)控件構(gòu)建強(qiáng)大用戶接口_.Net教程
推薦:asp.NET自定義服務(wù)器控件內(nèi)部細(xì)節(jié)如大家要轉(zhuǎn)載,請保留本人的版權(quán): /* *Description:asp.NET自定義服務(wù)器控件內(nèi)部細(xì)節(jié)系列教程 *Auther:崇崇-天真的好藍(lán) *MSN:chongchong2008@msn.com *Dates:2007-05-20 *Copyright:ChongCho
本文,我將結(jié)合這幾個(gè)數(shù)據(jù)控件對GridView控件做一個(gè)詳細(xì)的介紹,使用戶能夠?qū)γ總(gè)數(shù)據(jù)行獲得一個(gè)詳細(xì)的了解。
主要控件
DetailsView 和 FormView控件在顯示后端數(shù)據(jù)源中的單個(gè)記錄時(shí)功能強(qiáng)大,但是強(qiáng)迫用戶在一頁中顯示無數(shù)條記錄這很不現(xiàn)實(shí)。為此,我們可以將GridView控件和DetailsView或FormView控件結(jié)合在一起,來讓用戶從GridView控件中選擇單個(gè)列,然后利用DetailsView或FormView控件來瀏覽或操縱其中的內(nèi)容。因此,GridView是主要控件,而細(xì)節(jié)則是通過其他控件顯示的。
這種方法的第一步是設(shè)法可以選擇GridView控件中的單個(gè)行(例如,可以允許用戶選擇一行顯示在其它控件中)。此外,GridView控件的SelecterStyle屬性可以顯式的設(shè)定所選行的風(fēng)格,從而用戶知道或可以很容易的記住當(dāng)前選擇的是哪一行。
可以使用一個(gè)命令域來輔助行選擇。CommandField對象的ShowSelectButton屬性使得該對象成為行選擇的對象。CommandField的ButtonType屬性允許你控制如何進(jìn)行選擇,當(dāng)選定一行時(shí),GridView控件的DataKeyName屬性指名分配給選定項(xiàng)的值,該值可能通過選擇事件傳遞給其他控件。
當(dāng)單擊GridView中某行的選擇按鈕時(shí),隨即發(fā)生返回且更新GridView的SelectedRow屬性。除了SelectedRow屬性外,GridView控件還提供了SelectedIndex、SelectedValue、 和SelectedDataKey屬性。SelectedIndex屬性返回選定行的索引,而SelectedValue和SelectedDatakey屬性返回基于GridView的DataKeyNames屬性的值。
細(xì)節(jié)
既然已經(jīng)設(shè)定好主要的GridView控件,下一步就可以添加一個(gè)DetailsView或FormView控件來顯示選定行中的數(shù)據(jù)。在我們的例子中,DetailsView控件將被添加到GridView所在的頁面中。此外,DetailsView需要一個(gè)數(shù)據(jù)源,因此要求另外一個(gè)SQL Server數(shù)據(jù)源。我們想顯示GridView控件中選定行中的數(shù)據(jù),所以需要傳遞所選行的ID。
演示GridView控件與其它數(shù)據(jù)控件相結(jié)合應(yīng)用的最好方式就是利用實(shí)例代碼。下面的GridView控件連接到SQL Servcer,顯示Northwind數(shù)據(jù)庫中數(shù)據(jù)。這里使用了三個(gè)控件:DropDownList、GridView和DetailsView。
用戶可以使用DropDownList控件指定加載到GridView控件中的數(shù)據(jù)。用戶選擇某個(gè)“城市”,響應(yīng)員工的數(shù)據(jù)就被加載。因此,當(dāng)在GridView控件中通過顯示為鏈接標(biāo)簽的命令按鈕選擇了某個(gè)記錄后,指定員工的詳細(xì)信息將會顯示在DetailsView控件中。同時(shí),選定行呈黃色高亮狀態(tài),從而用戶可以容易的識別選擇的是哪一行。
代碼中使用了三個(gè)SqlDataSource對象用于為每個(gè)控件加載數(shù)據(jù)。GridView控件使用了來自DropDownList控件的SQL中的選定值,這是通過將來自DropDownList控件的值利用SqlDataSource控件的SelectParameters屬性傳遞給SQL的。見列表A所示。
你可以使用ControlParameter對象通過指定你想使用的數(shù)據(jù)的ID和屬性來獲得表單上其它控件中的數(shù)據(jù)。同時(shí),當(dāng)傳遞SelectedValue屬性時(shí),鍵值也通過ControlParameter對象從GridView傳遞到DetailView控件。GridView中選定行的SelectedValue使用指定給GridView控件的DataKeyNames值被賦值。此外,為了從控件獲得數(shù)據(jù),你還可以使用來自QuerySring,cookies和很多其它選項(xiàng)的數(shù)據(jù)。
列表B中包括了擁有三個(gè)控件和用于數(shù)據(jù)加載的對象全部源代碼,本例演示了使用數(shù)據(jù)控件操縱數(shù)據(jù)而不用編寫任何代碼。每個(gè)控件提供了大量的事件可用來為這些事件編寫代碼實(shí)現(xiàn)本文的同樣任務(wù)和更多其它任務(wù)。
更多強(qiáng)大接口
ASP.NET 2.0包括大量以GridView為代表的數(shù)據(jù)控件,我們使用這些控件可以很容易地顯示來自后端數(shù)據(jù)源中的數(shù)據(jù)。你還可以將GridView控件和其它的像DetailsView或FormView控件結(jié)合起來使用來操縱更多的數(shù)據(jù)對象,以及在一個(gè)表單域或單獨(dú)一個(gè)表單中顯示要編輯或?yàn)g覽的數(shù)據(jù)。
分享:ASP.NET 2.0實(shí)現(xiàn)防止同一用戶同時(shí)登陸要防止同一用戶同時(shí)登陸,首頁應(yīng)該記錄在線用戶的信息(這里與用戶名為例),然后判斷正在登陸的用戶里面是否已存在。在這里使用一個(gè)cache存放已經(jīng)登陸的用戶名,但是還有一個(gè)問題就是要知道用戶是
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實(shí)例(可帶附件)
- js實(shí)現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實(shí)現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報(bào)表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實(shí)例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實(shí)現(xiàn)分頁示例代碼
.Net教程Rss訂閱編程教程搜索
.Net教程推薦
- 利用緩沖技術(shù)提高JSP程序的性能和穩(wěn)定性
- ASP.NET對IIS中的虛擬目錄進(jìn)行操作
- 詳解asp.net控件CheckBoxList的使用
- 淺談ASP.NET兩個(gè)截取字符串的實(shí)用方法技巧
- VS 2008和.NET 3.5 Beta2常見問題的解決方案
- Asp.net Mvc Framework可以在Controller中使用的Url.Action方法
- asp.net中文件下載功能的實(shí)例代碼
- 解決asp.net訪問IIS元數(shù)據(jù)庫失敗的方法
- 試析ASP.NET的IIS映射
- 揭秘.net基礎(chǔ)知識錯(cuò)誤注意二十二點(diǎn)知識
- 相關(guān)鏈接:
- 教程說明:
.Net教程-組合.NET數(shù)據(jù)控件構(gòu)建強(qiáng)大用戶接口。