我在html表格中的aspx页面中有占位符,如下所示:
<div id="div1" runat="server" onmouseover="divexpand()" onmouseout="collapsediv()">
<span id="sp"><i>Status:</i></span>
<div id="div2" style="display:block;">
<table style="padding:10px;">
<tbody><tr>
<td>A:</td>
<td>
<asp:PlaceHolder ID="ph1" runat="server"></asp:PlaceHolder>
</td>
<td>
<asp:PlaceHolder ID="ph2" runat="server"></asp:PlaceHolder>
</td>
</tr>
</tbody>
</table>
</div>
我试图使用Page.FindControl(id)方法在page_load方法代码上访问占位符'ph1'和'ph2',如下所示:
protected void Page_Load(object sender, EventArgs e)
{
PlaceHolder ph1 = Page.FindControl("ph1") as PlaceHolder;
PlaceHolder ph2 = Page.FindControl("ph2") as PlaceHolder;
ph1.Controls.Add(new LiteralControl("<b><i>TEST</i></b>"));
ph2.Controls.Add(new LiteralControl("<b><i>TEST</i></b>"));
}
但我无法访问占位符。任何帮助将不胜感激。
答案 0 :(得分:1)
你应该从没有Page.FindControl
的代码中向placeholder添加控件答案 1 :(得分:0)
在此上下文中无需使用FindControl。使用各自的ID直接从代码隐藏中直接访问PlaceHolder控件。