0
我想防止一次顯示2 MessageDialog
s。所以我想只有一個MessageDialog
,並根據需要顯示或隱藏它。但是,我找不到如何檢查它是否已顯示,並且兩次調用ShowAsync
都會引發異常。檢查是否顯示特定的MessageDialog
那麼我該如何檢查它是否顯示?
我想防止一次顯示2 MessageDialog
s。所以我想只有一個MessageDialog
,並根據需要顯示或隱藏它。但是,我找不到如何檢查它是否已顯示,並且兩次調用ShowAsync
都會引發異常。檢查是否顯示特定的MessageDialog
那麼我該如何檢查它是否顯示?
由於您(您的代碼)控制顯示對話框,因此您需要跟蹤它是否正在顯示。
無論何時顯示對話框,您可以在代碼中的某處設置標誌,然後再次顯示對話框。
僞代碼:
if (!dialogBeingShown)
{
dialogBeingShown = true;
await messageDialog.ShowAsync("alert");
dialogBeingShown = false;
}
但是,你問這個問題說明你的代碼可能是過於複雜,這樣你可以進入其中的應用程序的不同部分可能要在顯示消息的情況同一時間。如果確實如此,那麼顯示消息的另一種方法可能是適當的。無論哪種方式,它聽起來像是值得回顧應用程序中的邏輯。
當你調用你的MessageDialogs時,你可以使用'bool'變量來設置'true'。 –