我正在使用Repeater
生成一个表格,我需要将<td>
设置为runat=server
以设置其可见性。
我正在尝试使用ItemDataBound
方法将其发现到FindControl
事件中,但它不起作用。
我能做到这一点吗?
答案 0 :(得分:3)
如果你想这样做,你应该这样写:
Visible=<%= SetVisiblity() %>
其中SetVisiblity是一个公共函数
答案 1 :(得分:0)
这应该可以解决问题。首先,创建一个调用以捕获转发器的OnDataItemBound事件的方法。
protected void MyRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
// Use FindControl, but start from the context of the RepeaterItem.
//
HtmlTableCell cell = e.item.FindControl("CellID") as HtmlTableCell;
if ( cell != null )
{
// Do what you gotta do.
}
}
您可以在转发器标记上明确连接事件。
<asp:Repeater ID="MyRepeater" runat="server" OnItemDataBound="MyRepeater_ItemDataBound">
</asp:Repeater>