怎么得到datagridview中所选中的多行数据

怎么得到datagridview中所选中的多行数据,第1张

Dim SelRowColl As DataGridViewSelectedRowCollectionDim dgvRow As DataRowSelRowColl = dgvMaterialSelectedRowsFor i = 0 To SelRowCollCount - 1dgvRow = dvMaterial(SelRowColl(i)Index)Row'可得到选中的每一行next第二个问题可在form2定义一个form 变量在load form2时将form1 的窗体句柄赋给form2 中的变量在form2窗体关闭代码中,关闭form1

Private Sub DataGridView1_CurrentCellChanged(By Val sender As Object, By Val e As SystemEventArgs) Handles DataGridView1CurrentCellChanged

//获取选中行第一列的值,也就是第0列的值

Dim result1 As String = DataGridView1Item(0, DataGridView1CurrentCellRowIndex)ValueToStringTrim

//获取选中行第二列的值,也就是第1列的值

Dim result1 As String = DataGridView1Item(1, DataGridView1CurrentCellRowIndex)ValueToStringTrim

'有几列就写几列,如果感觉这样写代码比较累赘,你可以放到for循环里面,把列数用一个变量i代替旧可以了

End sub

thisdatagridview1selectedrows[0]cells[1]valuetostring();//获取选中行的第一个单元格的值

后面就是依次类推了,我就不写啦

dataGridView1SelectedRows,这个是或得背选中的行

如果你想去出背选中的话,那么可以遍历

foreach (DataGridViewRow dgvr in dataGridView1SelectedRows)

{

//dgvr 就是比背选中的行,遍历,我想你懂的dataGridView1SelectedRows是一个集合,取出每一行当然遍历

//获取或设置

string msg = dgvrCells[0]Value == null "" : dgvrCells[0]ValueToString();

//如果保证烈不为空

string msg2 = dgvrCells[2]ValueToString();

dgvrCells[2]Value=“更改的”;

}

dataGridView1SelectedColumns 是背选中的列,当然取出其中一烈是一样的

如果你要取出所有行的话。那么

foreach (DataGridViewRow dgvr in dataGridView1Rows)

{

//dgvr 就是比被选中的行,遍历,

}

取出列的方式一样

当然还有最常用的,获取所有单元格的值

for (int i = 0; i < dataGridView1RowsCount; i++)

{

for (int j = 0; j < dataGridView1ColumnsCount; j++)

{

if (dataGridView1Rows[i]Cells[j]Value != null)

{

string msg3 = dataGridView1Rows[i]Cells[j]ValueToString();//取出对应的单元格的值

MessageBoxShow(msg3);

}

}

}

只得注意的是,dategridview默认是有一行空值的,当你

dataGridView1Rows[i]Cells[j]Value,这个单元格为空的时候,那么就是null,如果你强制转换为字符串将会异常,所以推介

msg3 = dataGridView1Rows[i]Cells[j]Value==null"空":dataGridView1Rows[i]Cells[j]ValueToString()

dataGridView1SelectedRows,这个是或得背选中的行

如果你想去出背选中的话,那么可以遍历

foreach (DataGridViewRow dgvr in dataGridView1SelectedRows)

{

//dgvr 就是比背选中的行,遍历,我想你懂的dataGridView1SelectedRows是一个集合,取出每一行当然遍历

//获取或设置

string msg = dgvrCells[0]Value == null "" : dgvrCells[0]ValueToString();

//如果保证烈不为空

string msg2 = dgvrCells[2]ValueToString();

dgvrCells[2]Value=“更改的”;

}

dataGridView1SelectedColumns 是背选中的列,当然取出其中一烈是一样的

如果你要取出所有行的话。那么

foreach (DataGridViewRow dgvr in dataGridView1Rows)

{

//dgvr 就是比被选中的行,遍历,

}

取出列的方式一样

当然还有最常用的,获取所有单元格的值

for (int i = 0; i < dataGridView1RowsCount; i++)

{

for (int j = 0; j < dataGridView1ColumnsCount; j++)

{

if (dataGridView1Rows[i]Cells[j]Value != null)

{

string msg3 = dataGridView1Rows[i]Cells[j]ValueToString();//取出对应的单元格的值

MessageBoxShow(msg3);

}

}

}

只得注意的是,dategridview默认是有一行空值的,当你

dataGridView1Rows[i]Cells[j]Value,这个单元格为空的时候,那么就是null,如果你强制转换为字符串将会异常,所以推介

msg3 = dataGridView1Rows[i]Cells[j]Value==null"空":dataGridView1Rows[i]Cells[j]ValueToString()

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++;

}

以上就是关于怎么得到datagridview中所选中的多行数据全部的内容,包括:怎么得到datagridview中所选中的多行数据、vb.net 2008 在鼠标单击DataGridView 某一行时 获取这行的值、c# DataGridView中,选中了多个行,如何获取选中的每一行的数据,或者每一行的索引等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9638769.html

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

发表评论

登录后才能评论

评论列表(0条)

保存