如何从另一个wpf窗口更改WPF窗口的标签文本

ujj*_*val 1 c# wpf

我有一个Page Call Page 1,第一页有1个Controls - label - Button

点击按钮我将打开新的Wpf窗口并且在那里有一个按钮,在该按钮的点击我想要更改第一个窗口标签文本.

LobbyStandardPopupView objLobbyStandardPopupView = new LobbyStandardPopupView();
objLobbyStandardPopupView.Show();

LobbyStandardView objLobbyStandardView = new LobbyStandardView();
objLobbyStandardView.Ring_Game.Text = "Hello";
Run Code Online (Sandbox Code Playgroud)

我尝试创建对象并更改控件值但不受影响.

mic*_*ele 6

在你的通话窗口:

ChildWindow w = new ChildWindow ();
w.Owner = this; //here your calling window
w.Show();
Run Code Online (Sandbox Code Playgroud)

在您的子窗口上:

(this.Owner as YourMainWindow).YourProperty  = "Your Text";
Run Code Online (Sandbox Code Playgroud)

Owner属性是一个Window,因此如果要访问自定义属性,则必须强制转换为窗口类型.

在您的情况下,使用Page,将此属性添加到您的LobbyStandardPopupView:

 public LobbyStandardView mycallingpage = null;
 public LobbyStandardPopupView(LobbyStandardView callingPage)
 {
     InitializeComponent();
     mycallingpage = callingPage;
 }
Run Code Online (Sandbox Code Playgroud)

并在您的按钮事件中:

mycallingpage.Ring_Game.Text = "Hello";
Run Code Online (Sandbox Code Playgroud)