带有DataBinding的ASP.NET GridView:切换列可见性

时间:2012-08-30 12:36:01

标签: asp.net data-binding code-behind markup

我有一个绑定到ObjectDataSource的ASP.NET GridView,其中不会自动生成列。现在我想根据用户的权限显示一行(包含编辑页面的链接)。我有一个方法,它执行所有权限检查并返回一个描述行可见性的简单布尔值。现在我的标记看起来有点像这样:

<Columns>
    <%-- Some important information rows --%>

    <asp:TemplateField Visible='<%= CanEditRows() %>'>
        <%-- Column content --%>
    </asp:TemplateField>
</Columns>

但是这总是会导致错误:

  

无法从String'&lt;%=创建System.Boolean类型的对象   CanEditRows()%&gt;'并分配给Visible-property。

(或者以这种方式......)

我还试图在GridView的DataBound或DataBinding-Events中切换代码隐藏的列可见性,但我尝试的所有内容都不成功......

有人可以帮帮我吗? :)

提前致谢!

1 个答案:

答案 0 :(得分:0)

尝试使用此代码

 <asp:TemplateField Visible=<%# CanEditRows() %> >