我想在我的代码后面添加一个if语句,只使我的转发器中的项模板不可见,我可以这样做吗?
<asp:Repeater runat="server" ID="Repeater_CategoryMenu">
<HeaderTemplate>
<div id="productCategory">
</HeaderTemplate>
<ItemTemplate>
hey
</ItemTemplate>
<FooterTemplate>
</div>
</FooterTemplate>
</asp:Repeater>
以下代码使整个转发器不仅仅隐藏了项目模板..
Repeater_CategoryMenu.Visible = false;
答案 0 :(得分:2)
将转发器绑定到空集合或
在OnDataBinding
答案 1 :(得分:1)
您必须处理ItemDataBound
事件,因此请先在Page_Load
中填写此行:
Repeater_CategoryMenu.ItemDataBound += new RepeaterItemEventHandler(Repeater_CategoryMenu_ItemDataBound);
然后这样的方法:
void Repeater_CategoryMenu_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item != null && (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem))
{
if (some_condition_here)
{
e.Item.Visible = false;
}
}
}