C# 如何使用方法关闭所有子窗口
很难处理这个问题,因为每次我导航到另一个窗体时,我的项目都会在显示窗口内容之前延迟几秒钟或没有响应 如何使用方法关闭所有子窗口C# 如何使用方法关闭所有子窗口,c#,wpf,methods,C#,Wpf,Methods,很难处理这个问题,因为每次我导航到另一个窗体时,我的项目都会在显示窗口内容之前延迟几秒钟或没有响应 如何使用方法关闭所有子窗口 我尝试了this.Close(),但没有成功。您可以使用应用程序类存储指向子窗口的链接。它创建了一个可以从任何地方访问的单态电流 public partial class App : Application { private List<Window> childWindows = new List<Window>(); public L
我尝试了
this.Close()
,但没有成功。您可以使用应用程序类存储指向子窗口的链接。它创建了一个可以从任何地方访问的单态电流
public partial class App : Application
{
private List<Window> childWindows = new List<Window>();
public List<Window> ChildWindows{get{return childWindows;}}
}
关闭ChildWindow时,必须从集合中删除链接
private void ChildWindow_Closed(object sender, EventArgs e)
{
((App)Aplication.Current).Windows.Remove(this) // here
}
如果需要,您可以将列表替换为字典,这样就有可能按键搜索我也是WPF的新手。我使用WinForms和API编程已经多年了,但我最终决定为我的下一个项目打开WPF,我不知道关于它的第一件事,但让我们看看是否能找到答案。到底是什么问题?您无法关闭窗体窗口,或者您正试图在两个窗口之间导航,但导航速度很慢?能否发布一些代码或解释如何设置该程序?我个人从未在WPF程序中打开新窗口时看到任何延迟。您在创建它们时是否进行了大量初始化?
private void ChildWindow_Closed(object sender, EventArgs e)
{
((App)Aplication.Current).Windows.Remove(this) // here
}