如何从窗口打开一个窗口

时间:2016-04-27 08:05:54

标签: c# wpf windows

我有一个主窗口,里面有一个按钮,点击一下 - 打开一个对话框窗口,写一个名称,在文本框中保存一个名称,并需要打开另一个窗口。

我希望它会在主窗口打开新窗口 - 但它在对话框窗口中打开了窗口,allthoght我将所有者设置为主窗口..

我该怎么办?

这是对话框窗口按钮中的代码:

 Screen myScreen = new Screen (name, ViewModel, mainWindow);
 myScreen.Owner = mainWindow;
 myScreen.Show();
 this.Close();

2 个答案:

答案 0 :(得分:0)

这是你应该怎么做的:

在第一个对话框中,您必须拥有一个公共变量,例如:

public string TextBoxContent;

在OK按钮事件中,您将执行以下操作:

this.TextBoxContent = TextBox.Text;
this.DialogResult = true;
this.Close();

在主窗口中,您必须这样做:

string returnedString;
DialogWindow w = new DialogWindow ();
w.ShowDialog();
if (w.DialogResult.HasValue && w.DialogResult.Value)
     returnedString=w.TextBoxContent;

然后,您将使用返回的字符串显示第二个对话框。希望你看到逻辑。

答案 1 :(得分:0)

好的,你有三个窗口MainWindow,其中有一个按钮可以打开另一个窗口名Dialog,其中输入名称为textBox,传递按钮{{1}输入到另一个窗口名textBox。所以我在名为Screen的{​​{1}}窗口中选择textBox,这将显示已通过的文字,这是我的解决方案

主窗口按钮以这种方式显示对话框

Screen

textBoxName窗口的构造函数,如下所示,它将文本作为参数传递 private void buttonMainShowDialog_Click(object sender, RoutedEventArgs e) { Dialog dl = new Dialog(); dl.ShowDialog(); } 窗口Screen文本

Dialog

您需要从对话框窗口调用此屏幕窗口,如下所示

textBox

它的工作正常,希望这能帮到你