獲取GridView中RowCommand的當前選中行的索引或主鍵Id

  1. 獲取GridView中RowCommand的當前索引行?前臺添加一模版列,里面添加一個LinkButton
  2. 前臺?(如果在后臺代碼中用e.CommandArgument取值的話前臺代碼就必須在按鈕中設置CommandArgument的值,值為綁定的數據庫字段
  3. <asp:TemplateField?HeaderText="操作">
  4. ????<ItemTemplate>
  5. ????????<asp:LinkButton?ID="LinkButton1"?runat="server"?CommandName="QianRu"?
  6. ????????CommandArgument='<%#?Eval("Id")?%>'>簽入</asp:LinkButton>??
  7. ????????<asp:LinkButton?ID="LinkButton2"?runat="server"?CommandName="QianChu">簽出</asp:LinkButton>
  8. ????</ItemTemplate>
  9. </asp:TemplateField>
  10. 后臺
  11. 在GridView里已經設置了LinkButton為事件處理按鈕,將通過以下方法獲取索引
  12. protected?void?gv_Company_RowCommand(object?sender,?GridViewCommandEventArgs?e){
  13. ????????if?(e.CommandName?==?"QianRu")
  14. ????{?????//取ID的值方法一???
  15. ??????????????GridViewRow?drv?=?((GridViewRow)(((LinkButton)(e.CommandSource)).Parent.Parent));?//此得出的值是表示那行被選中的索引值
  16. ??????????????inf?id=Convert.ToInt32(GridView1.DataKeys[drv.RowIndex].Value);?//此獲取的值為GridView中綁定數據庫中的主鍵值
  17. ??????????//取ID的值方法二???
  18. ??????????????GridViewRow?drv?=?((GridViewRow)(((LinkButton)(e.CommandSource)).Parent.Parent));?//此得出的值是表示那行被選中的索引值
  19. ??????????????//此獲取的值為GridView中綁定數據庫中的主鍵值,取值方法是選中的行中的第一列的值,drv.RowIndex取得是選中行的索引
  20. ??????????int?id?=?Convert.ToInt32(GridView1.Rows[drv.RowIndex].Cells[0].Text);?
  21. ??????????//取ID的值方法三??
  22. ??????????//因為在客戶端中就已經將LinkButton的CommandArgument與主鍵Id給綁定了所以在此可以直接用e.CommandArgument得出主鍵ID的值
  23. ??????????int?id?=?Convert.ToInt32(e.CommandArgument.ToString());?
    1. //取ID的值方法四
    2. ??????????//此方法不需在模板列中設置CommandArgument的值
    3. ??????????string?index=e.CommandArgument.ToString();?//那行被選中,取出選中行的索引
    4. ??????????int?id=Convert.ToInt32(GridView1.Rows[Convert.ToInt32(index)].Cells[0].Text);
    ????????}
  24. ????}
  25. 還有一種就是我們并不需要知道當前點擊的是第幾行,可以用以下方法實現要求:?
  26. <ItemTemplate>?
  27. ??????<asp:LinkButton?ID="LinkButton1"?runat="server"?CommandArgument='?<%#?Eval("field1")?%>'?
  28. ??????CommandName="play"?Text='?<%#?Eval("field2")?%>'>?</asp:LinkButton>?
  29. </ItemTemplate>?
  30. 上面這個LinkButton,Text綁定了字段2,?CommandArgument綁定了字段1?
  31. 那么,?
  32. protected??void??GridView1_RowCommand(object??sender,??GridViewCommandEventArgs??e)?
  33. {?
  34. ????if(e.CommandName="play")
  35. ????{
  36. ????????LinkButton?lb?=?(LinkButton)e.CommandSource;?
  37. ????????string??a??=??lb.Text;//這里可以獲得點擊行字段field2的值?
  38. ????????string?b?=?e.CommandArgument;//這里可以獲得點擊行字段field1的值
  39. ????}
  40. }
  41. 或:
  42. 如果是使用模板列,可以把數據的任意一列綁定到按鈕的CommandArgument,如下:?
  43. <asp:TemplateField>?
  44. <ItemTemplate>?
  45. <asp:Button?runat="server"?CommandArgument='<%#?Eval("id")?%>'?Text="Button"?/>?
  46. </ItemTemplate>?
  47. </asp:TemplateField>?
  48. 一般可以綁定到主鍵列,這樣可以在RowCommand通過e.CommandArgument獲取當前行的主鍵,也便于進行其他操作?
  49. 如果是要獲取行索引,比較麻煩一點,還是那個Button1,在GridView的RowDataBound事件中如下:?
  50. Button?btn?=?(Button)e.Row.FindControl("Button1");?
  51. if?(btn?!=?null)?
  52. {?
  53. btn.CommandArgument?=?e.Row.RowIndex.ToString();?
  54. }?
  55. 這樣就可以在RowCommand中通過?int?rowId=Convert.ToInt32(e.CommandArgument.ToString())?獲取行索引了?

轉載于:https://www.cnblogs.com/juan/archive/2009/03/31/1425928.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/276604.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/276604.shtml
英文地址,請注明出處:http://en.pswp.cn/news/276604.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

系統架構師 項目經理 哪個更有前景_中央空調加地暖與五恒系統,哪個更省錢?...

每逢嚴冬酷暑,人們都會感嘆空調是最偉大的發明,并且隨著科技發展還在不斷進化。從烤火取暖到空調和地暖的供暖,從紙扇電扇的吹風到空調的制冷,人們的需求正在不斷提高,于是,為了滿足人們的需求&#xff0c;市場上又衍生出了家裝五恒系統。 恒溫、恒濕、恒氧、恒潔、恒靜這…

軟件架構基本原則

軟件架構本質上是繪制一幅復雜素描所打的草稿&#xff0c;我還說&#xff0c;如果你罩得住&#xff0c;可以不需要這個草稿。但這只是“理論上”&#xff0c;我們寫軟件&#xff0c;基本上不是在寫只有幾千行的代碼的小程序&#xff0c;而是寫數千萬行的大型程序。《道德經》說…

Smarty目錄結構和子目錄路徑問題

原文鏈接&#xff1a;http://bbs.csdn.net/topics/80223905 問題 1).最初在模板文件中使用了絕對路徑&#xff08;相對于站點根的路徑 ).如在system_info.tpl中圖片是這樣顯示的<img src"/templates/default/images/logo.gif"/>這樣當系統發布時&#xff0c;…

c++直角坐標系與極坐標系的轉換_一篇閱讀量高達2百6十多萬的關于坐標系和投影的相關知識探討...

本文轉載于CSDN作者rsyaoxin這是一篇關于坐標和投影的「神文」截止目前瀏覽量已達2698239是相關文章中不可打破的神話...文末有本文作者推薦的兩款坐標轉換的小工具下載鏈接回想一下&#xff0c;接觸遙感專業也有幾個年頭了&#xff0c;而現在越來越偏離遙感了&#xff0c;突然…

c# xmlhttp POST提取遠程webservice數據

public string cancel(string StudentID,string Mobile){string datanull;data "<?xml version1.0 encodingutf-8?><soap:Envelope xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xmlns:xsdhttp://www.w3.org/2001/XMLSchema xmlns:soaphttp://schemas.…

Javascript實現的左右滑動菜單

原文鏈接&#xff1a;http://www.cnblogs.com/miqi2214/archive/2009/04/28/1445308.html Javascript實現的左右滑動菜單 先看Demo便于理解&#xff1a;請大家往這里看 業務需求&#xff1a; 1. 菜單個數不固定&#xff0c;當菜單個數長度小于給定范圍寬度&#xff0c;則左右移…

查詢用戶分配角色TCODE

s_bce_68001419 轉載于:https://www.cnblogs.com/yangliang/archive/2009/04/13/1434862.html

query string parameters什么意思_public static void main(String[] args) 是什么意思?(轉)...

public static void main(String[] args)&#xff0c;是java程序的入口地址&#xff0c;java虛擬機運行程序的時候首先找的就是main方法。一、這里要對main函數講解一下&#xff0c;參數String[] args是一個字符串數組&#xff0c;接收來自程度序執行時傳進來的參數。如果是在控…

經典算法:位圖排序

最近發現一個有趣的排序算法&#xff0c;通過位圖來完成排序。位圖排序其實就是基數排序&#xff0c;只不過位圖排序的下標是比特位。 問題描述 輸入&#xff1a;一個最多包含n個正整數的文件&#xff0c;每個數都小于n&#xff0c;其中n10^7。如果在輸入文件中有任何正數重復出…

PHP中刪除目錄的三種方法

原文鏈接&#xff1a;http://www.chinaz.com/program/2008/1022/41645.shtml PHP中刪除目錄的三種方法 1、遞規法&#xff1a;利用遞歸一層一層的刪。 deleteDir(&#xff04;dir) { if (rmdir(&#xff04;dir)false && is_dir(&#xff04;dir)) {if (&#xff04;d…

b樣條曲面繪制 opengl_CAD制圖軟件中如何利用EXCEL輸入坐標繪制曲線?

當在使用浩辰CAD制圖軟件繪制圖紙的過程中&#xff0c;經常要繪制由多個坐標點連接成的曲線時&#xff0c;有什么方便快捷的方法嗎&#xff1f;那當然是有的。利用EXCEL表格保存數據并與CAD制圖軟件巧妙地結合起來&#xff0c;就能很容易地畫出曲線。下面給大家詳細介紹一下吧&…

根據進程名殺掉進程

foreach (System.Diagnostics.Process pro in System.Diagnostics.Process.GetProcesses()){if (pro.ProcessName "Bss"){pro.Kill();break;}} 轉載于:https://www.cnblogs.com/wolfcool/archive/2009/04/17/1438284.html

JavaScript 操作 Cookie

從事web開發也有些日子了&#xff0c;cookie 是個啥差不多能說明白&#xff0c;可是實際自己一上手操作就是得去搜索(你們懂的)&#xff0c;結果被鄙視了...所以就寫一篇博文做為自己的學習筆記&#xff0c;嘿嘿&#xff0c;博客的好處在此體現出來了。 什么是 Cookie “cookie…

阿里云服務器購買該如何選擇?阿里云服務器購買步驟流程介紹...

很多第一次購買阿里云服務器&#xff0c;不知該如何選擇適合自已的服務器。其實購買阿里云服務器&#xff0c;主要是根據自已網站的流量來決定的。如果網站流量不大&#xff0c;一天只有幾百ip&#xff0c;一般選擇1核cpu&#xff0c;1G內存&#xff0c;1MB帶寬就可以用了&…

python 切片_全面解讀Python高級特性切片

大家好&#xff0c;歡迎來到Crossin的編程教室&#xff01;眾所周知&#xff0c;我們可以通過索引值(或稱下標)來查找序列類型(如字符串、列表、元組…)中的單個元素&#xff0c;那么&#xff0c;如果要獲取一個索引區間的元素該怎么辦呢&#xff1f;切片(slice)就是一種截取索…

十大Web網站漏洞掃描工具

原文鏈接&#xff1a;http://zhumeng8337797.blog.163.com/blog/static/1007689142012819111054920/ 1. Nikto 這是一個開源的Web服務器掃描程序&#xff0c;它可以對Web服務器的多種項目(包括3500個潛在的危險文件/CGI&#xff0c;以及超過900個服務器版本&#xff0c;還有250…

讀書筆記(06) - 語法基礎 - JavaScript高級程序設計

寫在開頭 本篇是小紅書筆記的第六篇&#xff0c;也許你會奇怪第六篇筆記才寫語法基礎&#xff0c;筆者是不是穿越了。 答案當然是沒有&#xff0c;筆者在此分享自己的閱讀心得&#xff0c;不少人翻書都是從頭開始&#xff0c;結果永遠就只在前幾章。對此&#xff0c;筆者換了隨…

最近做了一個安裝包的安裝流程圖

最近到做安裝包的詳細設計。下圖是安裝包的流程圖&#xff0c;如果有什么意見和建議&#xff0c;希望大家給我留言&#xff0c;大家以前討論 轉載于:https://www.cnblogs.com/zengshengping815/archive/2009/04/22/1441319.html

如何使用Nikto漏洞掃描工具檢測網站安全

轉載鏈接&#xff1a;http://www.linuxidc.com/Linux/2011-02/32000.htm 【51CTO.com 獨家特稿】隨著信息技術的發展&#xff0c;網絡應用越來越廣泛&#xff0c;很多企業單位都依靠網站來運營&#xff0c;正因為業務的不斷提升和應用&#xff0c;致使網站的安全性顯得越來越重…

什么是區塊鏈預言機(BlockChain Oracle)

預言機 Oracle 是區塊鏈中非常重要的一個功能&#xff0c;但我發現很少有人討論&#xff0c;也可能很多人對此并不了解。而網上關于預言機的文章很少&#xff0c;很多也沒有講明白&#xff0c;甚至有些還是錯誤的。所以我整理了一篇詳細的文章&#xff0c;分享給大家&#xff0…