在DataList控件怎么设置其中子控件的属性?
aspx页面中代码:
<ItemTemplate>
<asp:PlaceHolder ID="myPostAdmin" runat="server" Visible="False">
<fieldset style="width: 80%; color: #0099ff;">
<legend>回复:</legend><%# DataBinder.Eval(Container.DataItem, "PostAdmin") %>
</fieldset>
</asp:PlaceHolder>
</td>
</tr>
</table>
</ItemTemplate>
我想在后台页面中判断,如果回复是空就不显示asp:PlaceHolder这个控件,我想代码应该放在
ItemDataBound事件里面,代码应该怎么写?
protected void HideAdmin(object sender, DataListItemEventArgs e)
{
//数据是DataTable类型的
//((PlaceHolder)e.Item.FindControl("myPostAdmin")).Visible = false;好像不行
}
问题点数:20、回复次数:5Top
1 楼fstars(天天)回复于 2006-03-15 21:38:21 得分 0
bind完了也可以visible=false啊,乱想的..Top
2 楼topso(小刀)回复于 2006-03-16 00:30:08 得分 0
不是啊,我现在把子控件的属性绑定了一个字段,可以实现了.
不过还是那个问题,DataList里面怎么访问Item里面的子控件啊?Top
3 楼topso(小刀)回复于 2006-03-16 21:43:44 得分 0
有人和我说在databind里面写代码,用findcontrol,但是具体怎么用呢?Top
4 楼ksnoopy(snoopy)回复于 2006-03-16 22:40:33 得分 20
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataList1.DataBind();
for(int i=0;i<DataList1.Items.Count;i++)
{
if(回复显示控件为空)
((PlaceHolder)DataList1.Items[i].FindControl("myPostAdmin")).Visible = false;
}
}
}Top
5 楼adrian_hy(男眼睛)回复于 2006-03-16 23:04:58 得分 0
ksnoopy(snoopy)正解!Top





