访问子页中的母版页隐藏字段值

本文关键字:隐藏 字段 母版页 访问 | 更新日期: 2023-09-27 18:32:14

我在母版页中有隐藏元素。我在母版页代码隐藏中设置其值。我想在其子页面之一中访问该值。

public partial class MasterPage : System.Web.UI.MasterPage
{
    protected void Page_Load(object sender, EventArgs e)
    {
        hdnSessionContext.Value = "Some Value";
    }
}

.母版页

<input type="hidden" id="hdnSessionContext" runat="server" clientidmode="Static" />
<asp:ContentPlaceHolder ID="MainContainer" runat="server">
</asp:ContentPlaceHolder>

我尝试过什么(SomeChildPage.aspx.cs)

HtmlInputHidden hdnFieldValue = (HtmlInputHidden)Page.Master.FindControl("hdnSessionContext");

HiddenField hdnFieldValue = (HiddenField)Page.Master.FindControl("hdnSessionContext");

但两者都具有''的价值

访问子页中的母版页隐藏字段值

您正在尝试在设置之前访问 HiddenField 值,子页面的页面加载在母版页的页面加载事件之前触发,这就是您没有获得任何值的原因。

如果要设置的值是已知的,请尝试在.aspx页面中设置它,在这种情况下,您将能够在子页面中获取值。

我会将值传递到子控件中。您不希望从子控件调用母版页,因为这会将两者紧密耦合。