我确信这是重复的,但我找不到答案。
我有一个名为Popup的WPF窗口(所以我有Popup.Xaml,Popup.Xaml.cs)。 有没有办法确定是否存在此类的活动(可见)窗口实例? 我需要检查弹出窗口当前是否可见,如果弹出窗口当前可见,则跳过在不同类(没有与之关联的UI控件的类)中执行某些操作。
感谢,
答案 0 :(得分:2)
if (Application.Current.Windows.OfType<YourWindowType>().Any(x => x.IsActive))
{
//... etc
}
答案 1 :(得分:1)
创建Popup时,只需创建全局变量public static bool isPopupVisible = true
(对于App类中的ex)。然后,您必须处理事件关闭Popup并更改isPopupVisible = false
。就这样。只在需要时检查此变量。