在asp.net的gridview中按Id隐藏列

时间:2011-03-17 05:23:38

标签: c# asp.net gridview templatefield

我有asp.net应用程序,我有编辑,删除,添加选项的可编辑网格视图。此网格具有通常的模板字段。我想隐藏一些列。我知道我可以通过使用列索引来做到这一点。但我不想跟随它。相反,我想通过Id隐藏列。这是因为如果在我的应用程序中我需要添加更多列,那么需要更改代码增益并再次在核心中。所以我选择这种方式。我发现<asp:TemplateField />不包含Id属性。所以我无法通过Id隐藏<asp:TemplateField/>。对此有任何补救措施吗?

3 个答案:

答案 0 :(得分:1)

您始终可以使用列标题文本执行此操作。在网格视图的列中运行循环,并将列的标题文本与声明的常量进行比较并隐藏列,这样,如果在列之前或之后添加任意数量的列都不会影响代码。

答案 1 :(得分:0)

也许在模板字段中创建一个带有id的div,并使用客户端代码隐藏该div。

答案 2 :(得分:-1)

或许只要为要向用户显示的每个“视图”使用不同的网格标记,因此一个网格包含所有列,另一个网格包含有限列。

我假设你总是将相同的数据绑定到网格(无论你是否隐藏/显示列),那么你只需要在代码中使用一些逻辑来确定你想要显示的“视图”用户(即要绑定的网格)。