如何使用复选框的C#显示DataGridView列

时间:2019-10-30 21:09:04

标签: c# checkbox datagridview

如何使用WinForm C#在“已选中和未选中”复选框的情况下在DataGridView中显示可见和不可见列。

enter image description here

2 个答案:

答案 0 :(得分:2)

对于每个Datagrid列,将其“可见性”属性绑定到相应复选框的“ IsChecked”属性。

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

(此解决方案假定您正在使用WPF ...)

答案 1 :(得分:2)

对于Windows窗体:

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

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
}