我有一个实例,它显示了一个listView。.NET webform隐藏后端服务器中的HTML td列(更新面板,内容模板)
listview在更新面板中,它需要响应每个数据源绑定并通过检查Session来显示/隐藏listView表中的列。
我不能简单地添加
<% if((int)Session["v1"] ==1) { %> <td>Hi</td> <%}%>
的异常抛出说,当<%%>中存在的更新面板无法更新。
(但它适用于控制更新面板之外)
我想我可以通过JavaScript的做,但我只是想知道是否有一个更聪明的方式在后台做。
class='<%# HiddenClass %>'
和onload事件(变化HiddenClass空字符串中改变这个参数,如果该列应显示。
它适用于项目的列(在ItemTemplate中),但它不工作项目的标题栏LayoutTemplate模板(我认为这是因为数据源绑定仅重新呈现的字段在的ItemTemplate和不包括LayoutTemplate模板。
当前,我可以隐藏它来设置runat =“server”如果对于listview的每个数据源绑定,则可见为false。但是当我需要隐藏更多的列时(需要创建更多的ID并且asp.net不能按类设置可见的字段),它看起来非常复杂。
码喜,这样做是一样的,因为我设置ID和RUNAT =“服务器”的...他们都将引发与布局异常模板未加载(当数据源中没有记录时,ListView将加载其空模板而不是LayoutTemplate,因此无论占位符还是
我刚发现例外可以避免,这是我的错误,但问题是即使通过使用占位符,我仍然需要创建两个占位符(一有两个HTML td我需要隐藏,他们的位置不粘在一起。 – SKLTFZ
相关问题