日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

DataGrid Web Control 连载之九

發布時間:2025/5/22 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DataGrid Web Control 连载之九 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
單擊行內任意處選中該行<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

??這個系列是在開發過程中對遇到的技術問題的一個總結,當時對這個控件的了解不是很多,但是根據需要實現的功能,不得不查閱N多資料,在MSDN文檔中只有英文的說明,我整理并翻譯了出來,在此和大家一起分享。轉載請加此連接[url]http://august.blog.51cto.com[/url],謝謝! DataGrid中提供的選擇行的默認的方式是添加一個Select按鈕(實際上,是一個LinkButton按鈕),將其CommandName屬性設為“Select”,當單擊按鈕時,DataGrid得到“Select”命令,并自動地在選中模式下顯示該行。 ? 并非所有的用戶都會喜歡默認的“Select”按鈕,問題是如何實現在某行的任意處單擊而能選中該行。The solution is to perform a kind of sleight-of-hand in the grid.你可以象通常那樣添加一個Select LinkButton,用戶仍然可以使用它,也可以將它隱藏,然后在Page中加入客戶端腳本將Select按鈕的功能有效地復制到整個行。 下面的例子說明了如何來實現。在GataGridItemDataBound句柄中,首先要保證選中的行不能是header ,footer 或者Pager。然后得到Select按鈕的一個引用。在這個例子中,假設是第一個單元格中的第一個控件。然后調用一個少有人知的方法——GetPostBackClientHyperLink,這個方法返回一個設計好的控件的PostBack調用的名稱。換句話說,如果傳遞一個引用到一個LinkButton控件,這個方法將返回用于執行PostBack的客戶端功能調用的名稱。 最后,將客戶端方法指定給Item 本身,當DataGrid 生成時,它類似于一個HTMLTable。將方法指定給Item,等價于向表中的每一個行添加客戶端代碼。DataGridItem對象并不直接支持客戶端代碼到自身的方法,但是,我們可以通過它的Attributes集合來實現,這個集合傳遞通過瀏覽器指定給它的任何屬性項。 注意:這個技術的一個缺點在于,它在某種程度上增加了生成到瀏覽器的流,并且為每行的視圖狀態增加了信息量。 private void DataGrid1_ItemDataBound(object sender,

System.Web.UI.WebControls.DataGridItemEventArgs e)

{

?? ListItemType itemType = e.Item.ItemType;

?? if ((itemType == ListItemType.Pager) ||

?????? (itemType == ListItemType.Header) ||

?????? (itemType == ListItemType.Footer))

?? {

????? return;

?? }

?? LinkButton button = (LinkButton)e.Item.Cells[0].Controls[0];

?? e.Item.Attributes[" =

????? Page.GetPostBackClientHyperlink(button, "");

} ? (--------------------Finished---------------------)

總結

以上是生活随笔為你收集整理的DataGrid Web Control 连载之九的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。