检查ContentDialog是否打开

问题描述 投票:2回答:1

我有一个简单的问题。因为我一次只能打开一个COntentDialog,并且在ContentDialog的结束事件中,我有一个条件阻止ContentDialog通过做args.Cancel = true来关闭。因此,做ContentDialog.Hide()有时可能无法关闭ContentDialog并且再次打开对话框时会导致异常。因此,在任何对话框之前,我希望能够检查其他对话框是否已关闭。我怎样才能做到这一点 ?

c# xaml uwp
1个回答
4
投票

Popup里面有一个ContentDialog控件,你只需要找到它然后检查它的IsOpened属性。

// Children method: https://github.com/JustinXinLiu/Continuity/blob/0cc3d7556c747a060d40bae089b80eb845da84fa/Continuity/Extensions/UtilExtensions.cs#L25
var popup = Dialog.Children().OfType<Popup>().Single();
var isOpen = popup.IsOpen;
© www.soinside.com 2019 - 2024. All rights reserved.