2010-06-14 72 views
2

如何更改控件的值例如文字在用戶控件中,並且用戶控件位於母版頁中,我想從內容頁面更改該文字的值。如何更改母版頁中控件的值?

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

這裏ABC是用戶控件,XYZ是文字控件。

回答

5

最好的解決方案是通過公共屬性公開這些值。

把以下內容包含XYZ控制你的ABC控制:

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

然後:

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

現在,您可以通過添加以下屬性母版從母版頁公開此要從任何內容頁面使用它,只需執行以下操作(其中MPMasterPage類):

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