1

我有一个 Page Call Page 1,在第一页上有 1 个控件 - 标签 - 按钮

单击按钮时,我将打开新的 Wpf 窗口,其中有一个按钮,单击该按钮时,我想更改第一个窗口标签文本。

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

LobbyStandardView objLobbyStandardView = new LobbyStandardView();
objLobbyStandardView.Ring_Game.Text = "Hello";

我尝试创建对象并更改控制值,但它没有受到影响。

4

1 回答 1

6

在您的通话窗口中:

ChildWindow w = new ChildWindow ();
w.Owner = this; //here your calling window
w.Show();

在您的子窗口上:

(this.Owner as YourMainWindow).YourProperty  = "Your Text";

Owner 属性是一个窗口,所以如果你想访问你的自定义属性,你必须转换为你的窗口类型。

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

 public LobbyStandardView mycallingpage = null;
 public LobbyStandardPopupView(LobbyStandardView callingPage)
 {
     InitializeComponent();
     mycallingpage = callingPage;
 }

在您的按钮事件中:

mycallingpage.Ring_Game.Text = "Hello";
于 2013-02-11T11:01:47.940 回答