repeater中用placeholder控制列隐藏,如何获取placeholder中的控件?

mezzi100 2010-09-25 12:55:59
<asp:Repeater ID="rpt_data" runat="server" OnItemDataBound="rpt_onDataBound">
<ItemTemplate>
....
<asp:PlaceHolder runat="server" ID="PlaceHolder1">
<td align="center"><asp:Literal ID="ltr_status" runat="server" Text="<%#Eval("status")%>"></asp:Literal></td>
</asp:PlaceHolder>
</tr>
</ItemTemplate>


cs文件中:

protected void rpt_onDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Header)
{
Control c = e.Item.FindControl("PlaceHolder1");
if (c != null)
{
PlaceHolder p = (PlaceHolder)c;
Literal ltr_status = (Literal)e.Item.FindControl("ltr_status");
.....
}
}
}

Literal ltr_status = (Literal)e.Item.FindControl("ltr_status");
获取不到控件,用p.FindControl("ltr_status");同样返回null,未将对象设置到对象
...全文
137 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2010-09-25
  • 打赏
  • 举报
回复
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Header)
{
Control c = e.Item.FindControl("PlaceHolder1");
if (c != null)
{
PlaceHolder p = (PlaceHolder)c;
foreach(Control c in p.Controls)
{
if(c is Litera){}
}
}
}
mezzi100 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 koukoujiayi 的回复:]
第一个错误是:
Text="<%#Eval("status")%>">
应该是单引号:
Text='<%#Eval("status")%>'>

第二个错误,Literal应该在PlaceHolder中找

PlaceHolder p = (PlaceHolder)e.Item.FindControl("PlaceHolder1");
Literal L = (Litera……
[/Quote]
Literal在PlaceHolder中找也没找到,用wuyq11(人生如梦) 的方法搞定了,结贴
Ny-6000 2010-09-25
  • 打赏
  • 举报
回复
asp:Literal不要用空上.


使用asp:label试试.
koukoujiayi 2010-09-25
  • 打赏
  • 举报
回复
第一个错误是:
Text="<%#Eval("status")%>">
应该是单引号:
Text='<%#Eval("status")%>'>

第二个错误,Literal应该在PlaceHolder中找

PlaceHolder p = (PlaceHolder)e.Item.FindControl("PlaceHolder1");
Literal L = (Literal)p.FindControl("ltr_status");
string a=L.Text;
mezzi100 2010-09-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 net_lover 的回复:]
Header模板里面有 PlaceHolder1吗???
[/Quote]
孟子E章 2010-09-25
  • 打赏
  • 举报
回复
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
孟子E章 2010-09-25
  • 打赏
  • 举报
回复
Header模板里面有 PlaceHolder1吗???

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧