C# 如何在Datagridview winform应用程序中隐藏列?

C# 如何在Datagridview winform应用程序中隐藏列?,c#,visual-studio,winforms,datagridview,C#,Visual Studio,Winforms,Datagridview,如何在datagridview中隐藏列,如下所示: 我在datagridview属性中搜索了它,但什么也没找到。如果您能记下您的要求,我想您会知道答案: 要求如果列的宽度变为0(或非常小?),则该列应不可见 const int minimumColumnWidth = 2; // can this be 0? this.DataGridView1.ColumnWidthChanged += OnColumnWidthChanged; private void OnColumnWidthCha

如何在datagridview中隐藏列,如下所示:


我在datagridview属性中搜索了它,但什么也没找到。

如果您能记下您的要求,我想您会知道答案:

要求如果列的宽度变为0(或非常小?),则该列应不可见

const int minimumColumnWidth = 2; // can this be 0?
this.DataGridView1.ColumnWidthChanged += OnColumnWidthChanged;

private void OnColumnWidthChanged(object sender, DataGridViewColumnEventArgs e)
{
    DataGridViewColumn column = e.Column;
    column.Visible = column.Width > minimumColumnWidth;
}

当然,您必须发明一种方法使列再次可见。

网格中的每一列都有一个
visible
属性。您可以将AllowUserStoreSizeRows与visible属性结合起来,使列在宽度小于某些像素时不可见。不过,一定要想个好办法把它们带回来!非常感谢您的回答,先生,但在我的问题描述中,我附加了一个GIF演示,我们可以在其中隐藏列,并通过双击使其再次可见。我如何实现这种功能?不过,我很抱歉没有问题,也很抱歉英语不好。我向你展示了:写下你想要的东西,你几乎就有代码让它再次可见了。类似于:当操作员单击时,要求。。。该列必须再次可见:那么他应该在何处以及如何单击?