C# 是否有一种快速方法可以将DataGridView的所有列设置为不可见?

C# 是否有一种快速方法可以将DataGridView的所有列设置为不可见?,c#,winforms,datagridview,visible,datagridviewcolumn,C#,Winforms,Datagridview,Visible,Datagridviewcolumn,我不想遍历所有列,并将每列的Visible设置为false。我想知道是否有一个快速的方法来做到这一点 谢谢大家! 将数据源设置为null,当您想再次显示它时,可以将数据源设置回null 或者可以将Gridview visible设置为false,或将包含控件的Gridview设置为visible false 将数据源设置为null,当您想再次显示它时,可以将数据源设置回null 或者可以将Gridview visible设置为false,或将包含控件的Gridview设置为visible fal

我不想遍历所有列,并将每列的Visible设置为false。我想知道是否有一个快速的方法来做到这一点


谢谢大家!

将数据源设置为null,当您想再次显示它时,可以将数据源设置回null


或者可以将Gridview visible设置为false,或将包含控件的Gridview设置为visible false

将数据源设置为null,当您想再次显示它时,可以将数据源设置回null


或者可以将Gridview visible设置为false,或将包含控件的Gridview设置为visible false

有两个精确大小和位置相同的网格

if(conditionMet)
{
   grid1.visible = false;
   grid2.visible = true;
}

具有两个精确大小和位置相同的栅格

if(conditionMet)
{
   grid1.visible = false;
   grid2.visible = true;
}

老问题认为这可能对某人有帮助!!这可能是一个简单的选择

foreach (DataGridViewColumn col in myDgv.Columns)
{
    col.Visible = false;
}
您还可以遍历行

foreach (DataGridViewRow row in myDgv.Rows)
{
    // your code
}

老问题认为这可能对某人有帮助!!这可能是一个简单的选择

foreach (DataGridViewColumn col in myDgv.Columns)
{
    col.Visible = false;
}
您还可以遍历行

foreach (DataGridViewRow row in myDgv.Rows)
{
    // your code
}

您还可以使用LINQ,如下所示:

dataGridView1.Columns.OfType<DataGridViewColumn>().ToList().ForEach(col => col.Visible = false);

您还可以使用LINQ,如下所示:

dataGridView1.Columns.OfType<DataGridViewColumn>().ToList().ForEach(col => col.Visible = false);

除了使整个网格不可见之外,我不知道还有什么解决方案。但是grid.Columns.ForEachg=>g.visible=false可能是编写循环的最短方法。@JamesBlond我不想隐藏所有网格,我只想快速隐藏它的所有列,然后我只将其中的几列设置为可见,比如myGrid.Columns[ID].visible=myGrid.Columns[Name].visible=true。它干净多了。谢谢你的短途旅行,虽然它仍然是一个循环。是的,它仍然是一个循环,但是简短的一行…@KingKing如果你不能关闭数据源,那么任何解决方案都会涉及一个循环,因为你的目标是集合中单个列的可见属性,你至少需要一次访问它们。除了使整个网格不可见之外,我不知道还有什么解决方案。但是grid.Columns.ForEachg=>g.visible=false可能是编写循环的最短方法。@JamesBlond我不想隐藏所有网格,我只想快速隐藏它的所有列,然后我只将其中的几列设置为可见,比如myGrid.Columns[ID].visible=myGrid.Columns[Name].visible=true。它干净多了。谢谢你的短途旅行,虽然它仍然是一个循环。是的,它仍然是一个循环,但是简短的一行…@KingKing如果你不能关闭数据源,任何解决方案都会涉及一个循环,因为你的目标是集合中各个列的可见属性,你需要至少访问它们一次