獲取DataGridView中的的選中行

2021-06-07 16:01:44 字數 1083 閱讀 1551

已知值: datagridviewrow datagridviewrow

條件:   datagridview繫結到datatable上

求:      它對應的datarow

解答:   datarow datarow = (datagridviewrow.databounditem as datarowview).row;

需要解釋一下: 

(1)datagridview.currentrow屬性暴露datagridview的當前行,即包含使用者單擊的單元格的行。該屬性是乙個datagridviewrow物件。

(2)以這種方式獲得的datagridviewrow物件包含乙個 databounditem屬性,它暴露繫結到datagridview的底層資料,負責當前行顯示的資料。這個屬性是object型別,因為沒有限制 datagridview必須繫結到資料庫。然而,繫結到資料集時,該屬性實際上是乙個datagridview物件,因此可以將它強制轉換為這種型別。

(3)datagridview類有乙個row屬性,用於訪問資料集中的資料行。該屬性的型別是datarow,由於使用的型別化資料集定義可以知道實際的行型別,因此可以將它強制轉換為適當的型別。這裡的型別是folkdbdataset2.storyrow。

(4)通過型別化資料集的行folkdbdataset2.storyrow,可以使 用屬性summary獲得summary列的值。為保持datagridview的靈活性,必須採用這種方式。例如,如果採用較簡單的方式,將不能把 datagridview繫結到其他資料來源。與.net中的所有東西一樣,如果這是個問題,可建立繼承datagridview的類,並提供必要的功能使 這些更容易實現,但這種複雜性可能是不必要的。

databounditem:是控制項顯示底層資料的乙個屬性,通過訪問它可以獲取控制項的底層資料,型別為 object;

datarowview:這是乙個類,它的row屬性可以獲取當前行的資料;

可知:當我們想要獲取datagridview中的選中行時,可以這麼幹:

for ( int i = 0; i < datagridview.selectedrows.count; i++)

獲取DataGridView中的的選中行

條件 datagridview繫結到datatable上 求 它對應的datarow 解答 datarow datarow datagridviewrow.databounditem as datarowview row 需要解釋一下 1 datagridview.currentrow屬性暴露dat...

Winform中DataGridView多行刪除

在datagridview中刪除選中行,從資料庫中刪除。region 在datagridview中刪除選中行 點選刪除按鈕 private void buttondelete click object sender,eventargs e else strname sql語句 oraclecomma...

datagridview 獲取選中行的索引

for int i 0 i this.datagridview1.selectedrows.count i 遍歷所有選中的行 datagridview.currentcell.rowindex 是當前活動的單元格的行的索引 datagridview1.currentrow.index 獲得包含當前單...