2012-09-25 54 views
0

我有一個buttonfield的gridview。我想更新我的數據庫中的表格,並在點擊按鈕時更改按鈕圖像。什麼是我可以訪問行索引的最佳事件? 我已經使用RowCommand事件嘗試,但不能從該事件gridview按鈕字段

回答

0

我剛剛檢查這裏的文檔http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridview.rowcommand.aspx

如果你看看「注」部分(以下爲方便起見),你應該訪問的行索引能夠從CommandArguement財產獲得的rowIndex:

注意:要確定引發事件,使用傳遞給 事件的事件參數的 CommandArgument屬性的行的索引。 ButtonField類自動使用適當的索引值填充 CommandArgument屬性。對於其他 命令按鈕,您必須手動設置命令按鈕的CommandArgument屬性 。例如,當GridView控件沒有啓用分頁 時,您可以將CommandArgument設置爲 %<%#Container.DataItemIndex%>。

1

代替asp:ButtonField使用asp:TemplateFieldasp:Button內部的。設置一個CommandName說,MyCommand。現在在RowCommand事件中,這樣做

var clickedRow = (GridViewRow)((Button)sender).NamingContainer; 
var clickedIndex = clickedRow.RowIndex;