我有一个绑定到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中切换代码隐藏的列可见性,但我尝试的所有内容都不成功......
有人可以帮帮我吗? :)
提前致谢!
答案 0 :(得分:0)
尝试使用此代码
<asp:TemplateField Visible=<%# CanEditRows() %> >