gpt4 book ai didi

wpf - 如何正确忽略由 Visual Studio 调试工具为 XAML 创建的窗口

转载 作者:行者123 更新时间:2023-12-04 14:00:46 26 4
gpt4 key购买 nike

在我的应用程序中,我需要获取所有窗口的列表。

var windows = Application.Current.Windows;

如果我在 Debug模式下运行我的应用程序,我不仅会在列表中看到我的表单,还会看到 Microsoft.XamlDiagnostics.WpfTap.WpfVisualTreeService.Adorners.AdornerLayerWindow 的实例。由 Visual Studio 调试工具为 XAML 创建。

过滤窗口列表以忽略调试工具创建的窗口的正确方法是什么?我不想引用额外的程序集并检查是否
window is AdornerLayerWindow

我不想过滤
window.GetType().Name != "AdornerLayerWindow"

还有其他想法吗?

最佳答案

我只是做伎俩window.ActualWidth != 0 .它对我很有用。

Application.Current.Windows
.Cast<Window>()
.Where(w => w.ActualWidth != 0)
.ToList()
.ForEach(w => w.Close());

关于wpf - 如何正确忽略由 Visual Studio 调试工具为 XAML 创建的窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46416123/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com