获取DataGridView上选中的一行并转换为一个DataRow类型

  最近,因工作需要,重拾Winform。

  之前一直使用Dev插件,极少使用原生的Winform,对其很多控件的使用很是生疏。因此,最近几天,对Winform常用控件练习一下。

  今天开始看的DataGridView这个常用控件时,想实现在数据网格选中一行时,得到这行的数据,我们一般都想得到一行数据的DataRow,因为它方便操作。搜了几个网页,并没有找到想要的,也看到个别网友多年前论坛提的类似这个问题,但并没有在帖子里找到实用的解答。在此,把自己实现的代码贴出来,方便查看。

以下只贴出关键代码,相信一看便能理解。

DataGridViewRow gridrow = dataGridView1.SelectedRows[0];

DataRowView row_view = (DataRowView)gridrow.DataBoundItem;


DataTable dt = row_view.DataView.Table.Clone();//克隆DataTable结构
dt.ImportRow(row_view.Row);//复制目标DataRow数据到新建的DataTable中

 

转载于:https://www.cnblogs.com/zzfon/p/5441144.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用以下代码获取datagridview选中行第一列的数据: string data = dataGridView1.SelectedRows[].Cells[].Value.ToString(); ### 回答2: 要获取DataGridView选中行的第一列数据,可以使用以下方法: 首先,需要判断是否有行被选中。可以使用SelectedRows属性来获取选中的行集合,然后判断选中的行数是否大于0。 ``` if (dataGridView1.SelectedRows.Count > 0) { // 接下来获取选中行第一列的数据 } ``` 接下来,可以使用SelectedRows属性来获取选中行的集合。然后使用索引器来获取第一列的值。 ``` DataGridViewRow selectedRow = dataGridView1.SelectedRows[0]; // 获取选中的第一行 string firstColumnValue = selectedRow.Cells[0].Value.ToString(); // 获取第一列的值 ``` 最后,将第一列的值转化成字符串并使用ToString方法即可获取第一列的数据。 完整的代码示例如下: ``` if (dataGridView1.SelectedRows.Count > 0) { DataGridViewRow selectedRow = dataGridView1.SelectedRows[0]; // 获取选中的第一行 string firstColumnValue = selectedRow.Cells[0].Value.ToString(); // 获取第一列的值 // 使用firstColumnValue进行后续操作 } ``` 以上就是获取DataGridView选中行第一列数据的方法。 ### 回答3: 获取DataGridView选中行第一列的数据可以通过以下步骤实现: 1. 首先,我们需要检查DataGridView是否有选中的行。可以使用SelectedRows属性来获取选中的行。 2. 使用foreach循环遍历选中的行。 3. 在循环内部,使用Cells属性获取当前行的单元格集合。 4. 使用索引器访问单元格集合的第一个单元格,并使用Value属性获取该单元格的值。 以下是一个示例代码: ```csharp // 假设DataGridView的名字为dataGridView1 if (dataGridView1.SelectedRows.Count > 0) { foreach (DataGridViewRow row in dataGridView1.SelectedRows) { // 获取第一列单元格的值 var value = row.Cells[0].Value; // 将值转换为字符串并输出 if (value != null) { string firstColumnData = value.ToString(); Console.WriteLine(firstColumnData); } } } ``` 以上代码可以获取选中行的第一列数据,并将其输出到控制台。你可以根据具体的需求,将获取的数据用于其他操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值