情况:
- 点击主窗口、子窗口退出按钮,主窗口与子窗口全部退出。
- 单独关闭子窗口。
第一种情况
主窗口 定义Button1
private void Button1_click_exit()
{
Application.Current.Shutdown();
}
子窗口定义Button2
private void Button2_click_exit()
{
Application.Current.Shutdown();
}
效果都一样,点击之后全部退出。
第二种情况
主窗口定义不变,在子窗口加入Button2。代码如下:
// 遍历并关闭所有子窗口
foreach (Window item in Application.Current.Windows)
{
if (item.Title == "子窗口标题")
{
item.Close();
}
}
// 或者也可以这样写:
foreach (Window item in Application.Current.Windows)
{
if (item.Title == "") continue; // 忽略无标题窗口
if (item.Title != this.Title) item.Close();
}
点击子窗口里面的Button2,只关闭该子窗口。