【发布时间】:2015-07-21 14:45:59
【问题描述】:
我在启动应用程序时出现了一个小窗口 (winReset)。按完成后,主窗口打开。
但是,主窗口包含一个按钮,单击该按钮会再次打开 winReset。这次当你在 winReset 上单击 Done 时,我不想要一个新的 Main Window 实例,这与第一次不同。我只想关闭winReset。
我在这里的代码有问题。
到目前为止,这是我在 winReset 背后的代码中的内容,但它不起作用:
private void btnClickDone(object sender, RoutedEventArgs e)
{
Window win = App.Current.Windows.OfType<Window>().SingleOrDefault(w => w.Name == "main");
if (win.ShowDialog() == true)
{
this.Close();
}
else
{
MainWindow main = new MainWindow();
App.Current.MainWindow = main;
this.Close();
main.Show();
}
}
我正在尝试做的是仅在不存在的情况下创建一个新的 MainWindow。如果有,那么只需关闭当前的 winReset。我不确定我为什么要为此苦苦挣扎,但我似乎无法弄清楚。有什么帮助吗?
【问题讨论】:
-
这很容易解决。重新创建
winReset时,将bool变量(如showMain)设置为false。一旦此变量为false,点击完成将关闭应用程序。 -
如何从另一个窗口引用变量?