在asp.net 2.0中隐藏GridView列

本文关键字:隐藏 GridView asp net | 更新日期: 2023-09-27 18:28:48

我有一个网格视图,我通过创建一个数据表来填充它,从我的数据库连接填充该表,然后将数据绑定到我的网格。我没有使用自动生成列,但我使用的是自动生成选择。通过搜索,我找到了这个建议。

    gridview.Columns[index].Visible=false;

当我添加这一行时,当我单击web应用程序中的按钮时,会引发一个索引超出范围的异常。

我在将DataTable绑定到GridView后使用了这一行,但我想隐藏一行以用于不同的目的,所以我需要从我的存储过程中保留这些信息。

我还尝试使用<columns>选项手动添加列,但它只是在现有列的基础上添加列。

我对网络编程有点陌生,去掉自动生成选择是一种选择,但对我帮助不大,因为我必须花很多时间学习重新编码我没有的表的选择行功能。到目前为止,我读到的所有内容都处理了自动生成列的问题,但我没有使用它,如果自动生成选择也会导致同样的问题。我可能别无选择。

在asp.net 2.0中隐藏GridView列

隐藏行需要绑定到OnRowDataBound事件并设置样式。

看看这个答案:在asp.net 中隐藏一个gridView行

对于这个特殊的问题,我没有意识到自动生成列默认设置为true。无论是默认情况下,还是因为我使用了AutogenerateSelect控件,我都不完全确定,但我的解决方案是将AutogenerateColumns显式设置为False,然后从控件中的columns元素填充网格。谢谢梅洛的回复,你给了我所需要的答案。