Asp.net 从包含在母版页中的aspx的usercontrol访问母版页控件

Asp.net 从包含在母版页中的aspx的usercontrol访问母版页控件,asp.net,javascript-events,c#-2.0,Asp.net,Javascript Events,C# 2.0,我有一个包含在母版页中的aspx页。我的aspx页具有用户控件(ASCX),我正在打开一个弹出窗口,在其中我想获取母版页控件如何执行此操作。ASP.NET具有每个“母版”页的内部属性。从usercontrol,您可以将堆栈向后转移到Usercontrols parent>Page>Master。如果母版页中的控件位于任何contentplace持有者之外,则可以使用FindControl方法获取该控件。如果它位于任何内容占位符内,则必须遍历到内容占位符,然后才能找到控件。下面是一个例子 掌握 &

我有一个包含在母版页中的aspx页。我的aspx页具有用户控件(ASCX),我正在打开一个弹出窗口,在其中我想获取母版页控件如何执行此操作。

ASP.NET具有每个“母版”页的内部属性。从usercontrol,您可以将堆栈向后转移到Usercontrols parent>Page>Master。如果母版页中的控件位于任何contentplace持有者之外,则可以使用FindControl方法获取该控件。如果它位于任何内容占位符内,则必须遍历到内容占位符,然后才能找到控件。下面是一个例子

掌握

<body>
    <form id="form1" runat="server">
    <div>
       <asp:Label ID="lblVal" runat="server" Text="MasterLabel"></asp:Label>
        <asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
        </asp:ContentPlaceHolder>
    </div>
    </form>
</body>

在我的情况下,母版页中的标签在内容页之外。

Thts很好,但我必须在用户控件的弹出窗口中访问。我尝试了一些java脚本,这些脚本无法控制母版页(在ascx控件的弹出页面(也是aspx页面)中)
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
    <test:uc ID="test" runat="server" />
</asp:Content>
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="WebUserControl" %>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
 protected void Page_Load(object sender, EventArgs e)
    {
        MasterPage mstr = this.Parent.Page.Master as MasterPage;
        Label1.Text = (mstr.FindControl("lblVal") as Label).Text;
    }