我有一个listview,想要在pageload事件中更改其样式以显示:none。 我不想设置visible = false,因为我希望客户端的javascript代码可以使用该元素。我正在尝试这个,但没有运气。 div被渲染并可见。
CategoriesDataList.Style.Add(HtmlTextWriterStyle.Display,"none");
html是:
<asp:ListView ID="CategoriesDataList" runat="server" DataSourceID="SqlCategories"
OnItemDataBound="CategoriesDataList_Databound" ItemPlaceholderID="categoriesPlaceh">
<LayoutTemplate>
<div id="questionnaire"> ...
<asp:PlaceHolder ID="categoriesPlaceh" runat="server"></asp:PlaceHolder>
...</div>
</LayoutTemplate>
<ItemTemplate> ...
答案 0 :(得分:0)
你能不能只将style="display:none;"
添加到服务器标签?这通常适用于我,服务器标签通常只是转换额外的属性。
<asp:ListView ID="MyListView" runat="Server" style="display:none;" />
答案 1 :(得分:0)
好吧我是通过在LayoutTemplate中的div中添加一个runat =“server”然后在代码后面使用FindControl来改变它的样式来实现的。我看到实际上这是第一个被渲染的元素而不是我最初期待的listview id的div