你在那次Button_Click_1
事件中所做的是你创建了一个新的 ModernWindow1 然后你关闭了新创建ModernWindow1
的 , 。现在,从技术上讲,您在该事件开始时有两个 ModernWindow1。你需要的是关闭当前运行的ModernWindow1
,而不是新创建的ModernWindow1
。为此,您需要ModernWindow1
在转到另一个窗口之前参考旧的。
这是第二个现代窗口
public partial class ModernWindow2 : ModernWindow
{
public dynamic ReferencedWindow2; //you will put the original Window here
public ModernWindow2()
{
InitializeComponent();
}
public ModernWindow2(dynamic referencedWindow) // second constructor with a parameter
{
InitializeComponent();
ReferencedWindow2 = referencedWindow; // the original modernwindow being put in here
}
private void Button_OnClick(object sender, RoutedEventArgs e)
{
ReferencedWindow2.Close();
}
}
这是原始或主要的现代窗口
public partial class ModernWindow1 : ModernWindow
{
public ModernWindow1()
{
InitializeComponent();
}
private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
{
/*
this will show the second modernwindow using the second constructor with parameter
*/
ModernWindow2 newWindow2 = new ModernWindow2(this);
newWindow2.Show();
}
}