c#获取DataGridView选中的一个单元格所在的行,并把行保存在一个selectRow集合中

c#获取DataGridView选中的一个单元格所在的行,并把行保存在一个selectRow集合中,第1张

thisdataGridView1SelectedRows[0]Cells[0]ValueToString()//获取选中行的第一个个单元格的值

//单击单元格事件

IList<string> selectRow = new List<string>();

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)

{

string strvalue = dataGridView1Rows[eRowIndex]Cells[eColumnIndex]ValueToString();//获取当前选中行点击的单元格的值

selectRowAdd(strvalue);

}

GVCard为DataGirdView

GVCardSelectedRowsCount] 获取选中行的集合

GVCardSelectedColumnsCount; 获取选中列的集合

string[] selectedContents = new string[GVCardSelectedRowsCount];

int index = 0;

foreach (DataGridViewRow gdvr in GVCardSelectedRows)

{

VCardInfoID = gdvrCells[0]ValueToString();

VCardInfoCardNumber = gdvrCells[2]ValueToString();

VCardInfoStatus = gdvrCells[3]ValueToString();

VCardInfoUnvalDate = gdvrCells[7]ValueToString();

VCardInfoValDate = gdvrCells[6]ValueToString();

VCardInfoCardType = gdvrCells[9]ValueToString();

VCardInfoCardKind = gdvrCells[4]ValueToString();

VCardInfoModifyTime = DateTimeNowToString("yyyy-MM-dd hh:mm:ss");

VCardInfoEditCard(VCardInfo);

index++;

}

方法有很多 我就用 两种吧 一种是用 cellcheck 事件:

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)

{

string str=string str = dataGridView1Rows[eRowIndex]Cells[eColumnIndex]ValueToString();

}

另一种吧

string cellvalue = dataGridView1SelectedCells[0]ValueToString();

SelectedCells[]是你选定的单元格的数组,但要dataGridView1能允许选择多个单元格

本人比较喜欢第二种

仿造我的例子,你自己做做看1)设计一个类似的界面(我只有两个字段) 2)单击GridView的右上角小箭头,去掉逗允许编辑地(黑色框部分): 3)然后把GridView的属性做如下改动: 4)在Form1中增加绑定数据的代码(我是模拟的)Private Sub Form1_Load(ByVal sender As SystemObject, ByVal e As SystemEventArgs) Handles MyBaseLoad '动态增加一个表格,绑定到GridView上

Dim dt As New DataTable

dtColumnsAdd("Id", GetType(Integer))

dtColumnsAdd("name", GetType(String))

dtColumns(0)AutoIncrement = True

dtColumns(0)AutoIncrementSeed = 1

dtColumns(0)AutoIncrementStep = 1 '模拟数据库数据

Dim row As DataRow For i As Integer = 1 To 10

row = dtNewRow

row("name") = "name" & i

dtRowsAdd(row)

Next

dtAcceptChanges() DataGridView1DataSource = dt End Sub 5)然后使用SelectionChanged事件这样编码:Private Sub DataGridView1_SelectionChanged(ByVal sender As SystemObject, ByVal e As SystemEventArgs) Handles DataGridView1SelectionChanged

If (DataGridView1SelectedRows IsNot Nothing AndAlso DataGridView1SelectedRowsCount > 0) Then

'只选择单行,因此取第一行

txtIdText = DataGridView1SelectedRows(0)Cells(0)Value

txtNameText = DataGridView1SelectedRows(0)Cells(1)Value

End If

End Sub

选择datagridview的cellclick事件,在cellclick中

datagridview[序号,datagridviewCurrentCellRowIndex]ValueToString();

即可得到选中的行的响应单元格的值

以上就是关于c#获取DataGridView选中的一个单元格所在的行,并把行保存在一个selectRow集合中全部的内容,包括:c#获取DataGridView选中的一个单元格所在的行,并把行保存在一个selectRow集合中、DataGridView在RowHeaderSelect选择模式下如何得到被选中的行数、winform datagridview 如何取得选中行单元格的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9415394.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存