DataGridView CellSelect和FullRowSelect

时间:2011-12-19 20:32:45

标签: c# winforms datagridview

所以我有几个我们设置为FullRowSelect的datagridviews。用户现在要求能够在单个单元格上选择复制功能。

我将DataGridView设置为CellSelect但是当我运行应用时,当我点击行标题时,它不会突出显示完整行,只会突出显示第一列。

我尝试使用带有RowHeaderMouseClick的{​​{1}}来获取选择模式,但为了让CellMouseClick完全选择它,我必须多次点击行标题

RowHeaderMouseClick

我可以轻松地在private void DataGridView_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect; } CellSelect之间轻松切换来回切换,具体取决于他们在网格上选择的内容?

3 个答案:

答案 0 :(得分:14)

如果我了解你,你希望能够选择单个单元格,还能轻松选择整行吗?

如果是这种情况,请将SelectionMode设置为RowHeaderSelect

答案 1 :(得分:2)

DataGridView.SelectionMode = DataGridViewSelectionMode.FullRowSelect;

1-您实际上使用的是DataGridView结构,而不是您的对象DataGridView。

2-每次用户单击一行时,都不应修改SelectionMode,而是在程序的构造函数中修改。

实施例

public MyForm()
{
    dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
}

答案 2 :(得分:0)

添加这一行代码。

this.dataGridView1.SelectionMode = isTrue == true ? DataGridViewSelectionMode.FullRowSelect : DataGridViewSelectionMode.RowHeaderSelect;