C# 无法访问页面加载方法上的服务器控制
我在我的aspx页面的html表格中有占位符,如下所示:C# 无法访问页面加载方法上的服务器控制,c#,asp.net,C#,Asp.net,我在我的aspx页面的html表格中有占位符,如下所示: <div id="div1" runat="server" onmouseover="divexpand()" onmouseout="collapsediv()"> <span id="sp"><i>Status:</i></span> <div id="div2" style="display:block;"> <ta
<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>
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>"));
}
地位:
A:
我正在尝试使用page.FindControl(id)方法访问page_load method code behind上的占位符“ph1”和“ph2”,如下所示:
<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>
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>"));
}
受保护的无效页面加载(对象发送方,事件参数e)
{
占位符ph1=页面。FindControl(“ph1”)作为占位符;
占位符ph2=页面。FindControl(“ph2”)作为占位符;
ph1.控件。添加(新的文字控件(“测试”));
ph2.控制。添加(新的文字控制(“测试”));
}
但我无法访问占位符。如有任何帮助,将不胜感激。您应该在无页面的情况下从代码隐藏向添加控件。FindControl在此上下文中无需使用FindControl。使用各自的ID直接从代码隐藏中访问占位符控件。为什么要使用FindControl?是否仅使用ID无法访问它们?为什么不能通过
ID
直接访问它们?@cstruter如果同一控件位于任何列表控件(如GridView
)中,则需要查找控件,ListView
…@ChrisBint:正如您所建议的,可以使用其ID直接访问该控件。Thanks@user3240361在这种情况下添加了适当的答案。