如何更改母版页中控件的值?

时间:2010-06-14 07:48:37

标签: asp.net .net

如何更改控件的值,例如用户控件中的文字和用户控件在母版页中,我想从内容页面更改该文字的值。

((System.Web.UI.UserControl)this.Page.Master.FindControl("ABC")).FindControl("XYZ").Text = "";

这里ABC是用户控制,XYZ是Literal控制。

1 个答案:

答案 0 :(得分:5)

最佳解决方案是通过公共属性公开值。

将以下内容放入包含ABC控件的XYZ控件中:

public string XYZText
{
    get
    {
        return XYZControl.Text;
    }
    set
    {
       XYZControl.Text= value;
    }
}

现在,您可以通过将以下属性添加到MasterPage来从Master页面公开它:

public string ExposeXYZText
{
    get
    {
        return ABCControl.XYZText;
    }
    set
    {
       ABCControl.XYZText = value;
    }
}

然后要从任何内容页面使用它,只需执行以下操作(其中MPMasterPage类):

string text = ((MP)Page.Master).ExposeXYZText;
((MP)Page.Master).ExposeXYZText = "New Value";