0

我有大约 5 列的 DataGridView,最后一列是DataGridViewLinkColumn类型。所以这里的要求是我应该能够选择我想要的任何行,当我这样做时,应该选择除该选定行中的最后一列之外的所有列。由于最后一列包含超链接文本,并且编写了一些旨在运行的函数。

目前我已将选择模式设置为FullRowSelect

为了达到要求,我尝试将模式设置为 CellSelect 并在CellContentClick中为选定行的特定列设置“ Selected ”属性。但是选择没有正确进行。我一点击它就会消失。我也尝试在CellMouseUp中放入相同的逻辑,但它也不起作用。

请建议我实现要求的方法或解决方法。

非常感谢!

4

1 回答 1

1

首先将 设置SelectionModeCellSelectSelectionChanged然后对事件进行编码:

private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
    foreach (DataGridViewCell c in dataGridView1.CurrentRow.Cells)
            c.Selected = c.ColumnIndex != 4;
}

请注意,这对取消选择行没有任何规定!

于 2017-04-23T10:38:17.603 回答