Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在asp.net 2.0中隐藏GridView列_C#_Asp.net 2.0 - Fatal编程技术网

C# 在asp.net 2.0中隐藏GridView列

C# 在asp.net 2.0中隐藏GridView列,c#,asp.net-2.0,C#,Asp.net 2.0,我有一个gridview,我通过创建一个datatable来填充它,从数据库连接填充该表,然后将数据绑定到我的网格。我使用的不是自动生成列,而是自动生成选择。通过搜索,我找到了这个建议 gridview.Columns[index].Visible=false; 当我添加这一行时,当我单击web应用程序中的按钮时,会引发索引超出范围异常 我在将DataTable绑定到GridView后使用了这一行,但我想隐藏一行用于其他目的,所以我需要从存储的进程中保留该信息 我还尝试使用选项手动添加

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

    gridview.Columns[index].Visible=false;
当我添加这一行时,当我单击web应用程序中的按钮时,会引发索引超出范围异常

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

我还尝试使用
选项手动添加列,但它只是将列添加到现有列的顶部


我对web编程有点陌生,去掉autogenerate select是一个选项,但对我没有帮助,因为我需要花很多时间学习重新编码我没有的表的select row功能。到目前为止,我读到的所有内容都处理了自动生成列的问题,但我没有使用它,如果自动生成select导致相同的问题,那么我就不使用它。我可能别无选择

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


查看此答案:

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


查看此答案:

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

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

你的问题到底是什么还不清楚。很抱歉,我没有补充我得到的索引超出了范围错误。我改变了我的问题以反映这一点。我基本上需要能够在gridview中隐藏一行。如果仍然不清楚,我将尝试发布我的一些代码。在您编辑问题之前,隐藏行意味着什么,应该使用
display:none
或根本不(
Visible=false
)将其呈现给客户端?您是否需要在客户端访问it中的控件?请注意,您始终可以访问服务器端的控件及其值,即使它们不可见。您还应该显示您试图隐藏该行的按钮单击处理程序。您的问题究竟是什么还不清楚。很抱歉,我没有添加索引超出范围的错误。我改变了我的问题以反映这一点。我基本上需要能够在gridview中隐藏一行。如果仍然不清楚,我将尝试发布我的一些代码。在您编辑问题之前,隐藏行意味着什么,应该使用
display:none
或根本不(
Visible=false
)将其呈现给客户端?您是否需要在客户端访问it中的控件?请注意,您始终可以访问服务器端的控件及其值,即使它们不可见。您还应该显示您试图隐藏该行的按钮单击处理程序。