【问题标题】:How To Visible DataGridView Columns Using Checkbox's C#如何使用 Checkbox 的 C# 显示 DataGridView 列
【发布时间】:2019-10-30 21:09:04
【问题描述】:

如何使用 WinForm、C# 通过选中和未选中复选框在 DataGridView 中显示和不可见列。

【问题讨论】:

  • DataGridViewColumn 有一个Visible 属性。 How to: Hide Columns in the Windows Forms DataGridView Control … 选中复选框时尝试 dataGridView1.Columns["columnToHide"].Visible = false; ,如果未选中则尝试 true
  • 如果您在问题中指定您使用的是 WinForms 还是 WPF,将会很有帮助。

标签: c# checkbox datagridview


【解决方案1】:

对于每个 Datagrid 列,将该列的 Visibility 属性绑定到相应复选框的 IsChecked 属性。

将绑定中的转换器设置为使用BooleanToVisibilityConverter

(此解决方案假设您使用的是 WPF...)

【讨论】:

    【解决方案2】:

    如果是 Windows 窗体:

    您可以通过DataGridViewColumn.Visible 属性指定每个DataGridViewColumn 的可见性,例如:

    dataGridView1.Columns["nameOfColumnThatShouldBeInvisible"].Visible = checkBox1.Checked;
    

    此外,当确定是否显示某些列的复选框被选中/取消选中时,您可能希望唤起重新绑定:

    checkBox1.CheckedChanged += new EventHandler(checkBox1_CheckedChanged);
    
    public void checkBox1_CheckedChanged(Object sender, EventArgs e) 
    {
        dataGridView1.Columns["nameOfColumnThatShouldBeInvisible"].Visible = checkBox1.Checked;
        //rebind dataGridView1 so as to show/hide column for clicked checkbox
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-16
      • 1970-01-01
      相关资源
      最近更新 更多