取得在datagridview中被選擇的列、行、單元格時,可以使用datagridview物件的selectedcolumns、selectedrows、selectedcells屬性。
[vb.net] '表示被選擇的單元格 console.writeline("單元格被選擇") for each c as datagridviewcell in datagridview1.selectedcells console.writeline(", ", c.columnindex, c.rowindex) next c '表示被選擇的行 console.writeline("行被選擇") for each r as datagridviewrow in datagridview1.selectedrows console.writeline(r.index) next r '表示被選擇的列 console.writeline("列被選擇") for each c as datagridviewcolumn in datagridview1.selectedcolumns console.writeline(c.index) next c
[c#] //表示被選擇的單元格 console.writeline("單元格被選擇"); foreach (datagridviewcell c in datagridview1.selectedcells) , ", c.columnindex, c.rowindex); } //表示被選擇的行 console.writeline("行被選擇"); foreach (datagridviewrow r in datagridview1.selectedrows) //表示被選擇的列 console.writeline("列被選擇"); foreach (datagridviewcolumn c in datagridview1.selectedcolumns)
performance優化
選擇範圍很廣時,屬性的performance就會變得反應遲緩。
如果只想取得被選擇單元格的數字時,可以不使用「datagridview1.selectedcells.count」取得了,而使用datagridview.getcellcount方法會效率更高的。同樣,取得被選擇列的數字時使用getcolumncount方法,行的數字時使用getrowcount方法。
[vb.net] '被選擇單元格的數 console.writeline( _ datagridview1.getcellcount(datagridviewelementstates.selected)) '被選擇行的數 console.writeline( _ datagridview1.rows.getrowcount(datagridviewelementstates.selected)) '被選擇列的數 console.writeline( _ datagridview1.columns.getcolumncount(datagridviewelementstates.selected))
[c#] //被選擇單元格的數 console.writeline( datagridview1.getcellcount(datagridviewelementstates.selected)); //被選擇行的數 console.writeline( datagridview1.rows.getrowcount(datagridviewelementstates.selected)); //被選擇列的數 console.writeline( datagridview1.columns.getcolumncount(datagridviewelementstates.selected));
檢測datagridview內所有被選擇的單元格時,可以使用datagridview.areallcellsselected方法。
補充:使用areallcellsselected方法,共享行可能會變為非共享行。
選擇被指定的列、行、單元格
選擇被指定的列、行、單元格時,設定selected屬性為true即可。
[vb.net] '選擇(0, 0)的單元格 datagridview1(0, 0).selected = true '選擇索引1的行 datagridview1.rows(1).selected = true '選擇索引2的列 datagridview1.columns(2).selected = true
[c#] //選擇(0, 0)的單元格 datagridview1[0, 0].selected = true; //選擇索引1的行 datagridview1.rows[1].selected = true; //選擇索引2的列 datagridview1.columns[2].selected = true;
補充:選擇所有的單元格可以使用datagridview.selectall方法,解除時使用datagridview.clearselection方法。
DataGridView控制項的使用
1 資料繫結 下面將介紹用datatable對datagridview控制項進行繫結。首先得到datatable dt,dt中的列為 id pname short name 其次 設定datagridview控制項 dgvproductname 的列,如下圖所示。注意 列的個數要與datatable...
DataGridView控制項的使用
例 建立了乙個例項 禁止在datagridview控制項中新增 刪除禁用datagridview控制項的自動排序,使datagridview控制項各行顯示不同的顏色,使datagirdview控制項在選中行呈現不同顏色和選擇datagridview控制項中的某行時,將詳細資訊顯示在textbox文字...
DataGridView的Cell的字型顏色變化
今天寫 用datagridview顯示資料,但是有些單元格需要改變字型顏色,直接在load事件中呼叫改變顏色的方法時,頁面沒有任何反應 即還是原來的字型顏色 但是點查詢按鈕後,就可以出現顏色變化了,但是直接進入的不變顏色,不知道原因。將方法更換到databindingcomplete事件中呼叫,就可...