19

是否可以在运行时按名称显示/隐藏 GridView 列?

我可以通过索引来做到这一点,如下所示:

gridReviews.Columns[4].Visible = false;

但是我想做以下事情:

gridReviews.Columns["Name"].Visible = false;

最好的方法是什么?

4

3 回答 3

19

您可以使用以下代码:

foreach (DataControlField col in gridReviews.Columns)
        {
            if (col.HeaderText == "Name")
            {
                col.Visible = false;
            }
        }
于 2012-06-13T10:28:00.647 回答
0

如果您可以访问用于绑定gridview的数据并且gridview列与数据表的顺序相同(并且AutoGenerateColumns = false),则可以通过列名间接访问gridview:

//Make ID column invisible by column name
gv.Columns[dt.Columns[ID].Ordinal].Visible = false;
于 2015-03-24T17:51:58.040 回答
0

未针对 ASP.NET 进行测试...下一行是针对 Windows 窗体解决方案...

因为这个问题在 Windows 表单关键字的顶部也是如此发布这个..

my_gridview.Columns["ColumnName"].Visible = false;
于 2021-02-25T21:35:43.433 回答