程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> asp.net GridView模板列中實現選擇行功能

asp.net GridView模板列中實現選擇行功能

編輯:ASP.NET基礎

大部分的功能采用通過模板列實現,為了方便選擇和刪除使用了它自帶的功能和方法,很容易就能實現,沒發現有什麼大問題;但是在部署到服務器中,發現選擇顯示的不是文字,而是“select”,也沒查出是什麼原因,後面不得不改為通過模板列實現。
  在改為模板列實現時,發現gv_sjy_RowCommand事件裡不能通過e.CommandArgument獲取行的索引值,只能另想途徑了,發現有兩種方法可以做到:
  第一種:
復制代碼 代碼如下:
  <asp:LinkButton ID="btnSelect" runat="server" CausesValidation="False" CommandName="Select" Text="選擇" CommandArgument="<%# ((GridViewRow)Container).RowIndex %>"></asp:LinkButton>

  添加紅色部分,後台才可以通過int rowIndex = Convert.ToInt32(e.CommandArgument);獲取行的索引值
  
  第二種:
復制代碼 代碼如下:
  protected void gv_sjy_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Select")
{
    GridViewRow gvRow = (GridViewRow)(((LinkButton)e.CommandSource).Parent.Parent);
int rowIndex = gvRow.RowIndex;//獲取選擇的行索引
txtSjyxh.Text = dt2.Rows[rowIndex]["sjyxh"].ToString();
}
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved