HtmlGenericControl-找不到div

时间:2019-03-13 14:23:59

标签: c# asp.net webforms

我在页面正文中有一个div,它看起来像这样-

<div runat="server" class="row" style="display:none; height:600px;" id="Div1">
</div>

我有以下代码可以尝试在后面的页面中访问它-

HtmlGenericControl getLargeDiv = (HtmlGenericControl)this.FindControl("Div1");
if (getLargeDiv != null)
{
    getLargeDiv.Style.Add("display", "inherit");
}

但是似乎每次都找到Null。我不能完全解决。 div位于一个面板内,该面板确实包含runat =“ server”-这会影响它吗?

谢谢

2 个答案:

答案 0 :(得分:0)

您可能正在使用母版页。如果是这样,则需要先找到ContentPlaceHolder

ContentPlaceHolder cph = (ContentPlaceHolder)Master.FindControl("ContentPlaceHolder1");
HtmlGenericControl getLargeDiv = (HtmlGenericControl)cph.FindControl("Div1");

或者作为一线客

HtmlGenericControl getLargeDiv = (HtmlGenericControl)Master.FindControl("ContentPlaceHolder1").FindControl("Div1");

答案 1 :(得分:0)

您可能想运行一个遍历控制树的递归方法。 FindControlRecursive