【问题标题】:C# DataGridView how to limit multi selection to same column only?C# DataGridView 如何将多选限制在同一列?
【发布时间】:2016-12-20 00:33:17
【问题描述】:

因为我遇到了我的问题,所以我不得不向你寻求帮助。我有一个 DataGridView 我想选择多行但只能在同一列中。如果用户在他开始选择的列之外,我想防止这些行也被选中。

我该怎么做?

致以诚挚的问候

拉尔夫

【问题讨论】:

  • 每一行都有很多列,所以你的问题很不清楚。如果您允许多行,根据定义,这意味着多列
  • 让我们更容易理解。你有 3 列。选择应该能够在每一列中。但是当你开始选择让我们说在第 2 列中,那么只有第 2 列中的行应该能够选择。因此,如果您从第 2 列开始,则应忽略第 1 列和第 3 列...您可以选择第 2 列中的每一行,但不能同时选择其他列。如果从第 1 列开始也是一样。那么 2 和 3 应该无法选择。

标签: c# datagridview


【解决方案1】:

尝试添加 CellClick 事件处理程序以自动删除不需要的列的选择

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) {
    if (e.ColumnIndex != 1) {
        dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected = false;
    }}

缺点:您无法选择其他列

【讨论】:

  • 试过 - 不像我预期的那样工作。不过还是谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-02
相关资源
最近更新 更多