c# datagridview 如何选中行,以及怎么获取选中行的数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# datagridview 如何选中行,以及怎么获取选中行的数据相关的知识,希望对你有一定的参考价值。

有一个datagridview控件
默认的是点击以后只选择了一个单元格
怎么样可以改成点击(左击或者右击)选择一行啊
还有一个contextMenuStrip控件,想实现获取选择的数据的功能
怎么样获取所选择行的数据?
网上搜了一些文章,感觉都是讲的太多,不是我要的

C#如何获取DataGridView对象单元格的内容,这里介绍下获取方法。

1、首先需要在事件列表中找到DataGridView对象的CellClick事件。

2、然后在此事件中,会有DataGridCiewCellEventArgs事件变量e。

3、此时便能利用DataGridCiewCellEventArgs事件变量e的RowIndex属性获得行索引,但是我们需要加1。

4、并且还能通过CurrentCellAddress属性组的X和Y坐标,也是能够获得行列索引。

参考技术A

可以设置DataGridView的SelectionMode属性为FullRowSelect 实现左键点击选取整行,右击的话就需要在鼠标点击事件里面实现了
如下:
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)

if (e.ColumnIndex < 0 || e.RowIndex < 0) return;
if (e.Button == System.Windows.Forms.MouseButtons.Right)

dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = true;


右键菜单自己设置关联上dgv就可以,右键菜单的按钮点击事件内容如下:
if (dataGridView1.CurrentRow == null) return;
DataGridViewRow dgvr = dataGridView1.CurrentRow;
string val = dgvr.Cells["???"].Value.ToString();你自己要获取的数据

扩展内容

c#怎么获取datagridview选中多行的每一行中的某一列的值

var datagridview = new DataGridView();
var dataselect = datagridview.SelectedRows;
var label = new Label();
foreach (DataGridViewRow row in dataselect)

label.Text += row.Cells[1].Value + "\\n";

c# datagridview 如何选中行-搜狗百科

参考技术B 可以设置DataGridView的SelectionMode属性为FullRowSelect 实现左键点击选取整行,右击的话就需要在鼠标点击事件里面实现了
如下:
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)

if (e.ColumnIndex < 0 || e.RowIndex < 0) return;
if (e.Button == System.Windows.Forms.MouseButtons.Right)

dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = true;


右键菜单自己设置关联上dgv就可以,右键菜单的按钮点击事件内容如下:
if (dataGridView1.CurrentRow == null) return;
DataGridViewRow dgvr = dataGridView1.CurrentRow;
string val = dgvr.Cells["???"].Value.ToString();你自己要获取的数据本回答被提问者和网友采纳
参考技术C 可以设置DataGridView的SelectionMode属性为FullRowSelect 实现左键点击选取整行,右击的话就需要在鼠标点击事件里面实现了
如下:
private void dataGridView1_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)

if (e.ColumnIndex < 0 || e.RowIndex < 0) return;
if (e.Button == System.Windows.Forms.MouseButtons.Right)

dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = true;


右键菜单自己设置关联上dgv就可以,右键菜单的按钮点击事件内容如下:
if (dataGridView1.CurrentRow == null) return;
DataGridViewRow dgvr = dataGridView1.CurrentRow;
string val = dgvr.Cells["???"].Value.ToString();你自己要获取的数据
参考技术D

赞同一楼的做法.选定FullRowSelect.

以上是关于c# datagridview 如何选中行,以及怎么获取选中行的数据的主要内容,如果未能解决你的问题,请参考以下文章

c# DataGridView中,选中了多个行,如何获取选中的每一行的数据,或者每一行的索引?

c#如何获取datagridview中的第一列的值,注意不是选中行

winform c# Datagridview 选中行 急!!!

c# datagridview怎么不选中行

C# dataGridView如何自动获取所有行的值?

c# 获取dataGridView选中行的行数