关闭表单视图
本文关键字:视图 表单 | 更新日期: 2023-09-27 18:02:58
前面(在一些非常感谢的帮助下),向我展示了如何创建一个允许我打开窗口的函数(见下文)
private void icon_Add(object sender, RoutedEventArgs e)
{
OpenView(typeof(viewName));
}
private void OpenView(Type newView)
{
if(typeof(Window).IsAssignableFrom(newView)) {
Window window = (Window)Activator.CreateInstance(newView);
window.Show();
}
}
我现在想修改OpenView,这样我也可以告诉它关闭一个窗体(和可以真正做一些帮助。理想情况下,我希望能够运行:
OpenView(typeof(viewName), typeof(viewToClose));
再次感谢。
Edit:
要点与示例
使用Application.Current.Windows
作为它存储所有的应用程序的窗口
private void OpenView(Type newView, Type closeType)
{
foreach (Window item in Application.Current.Windows)
{
if (item.GetType() == closeType)
{
item.Close();
}
}
if (typeof(Window).IsAssignableFrom(newView))
{
Window window = (Window)Activator.CreateInstance(newView);
window.Show();
}
}