1
我用兩個線程,人會問,在WPF
MahApps MessageDialog用戶問題,MahApp MessageDialog隱藏
另一個我想隱藏MessageDialog,如何隱藏MessageDialog在下面的代碼HideMessageDialog()
?
我正在做一些事情,需要中斷問題,並保持主窗口同時打開。所以我需要一種方法來隱藏對話框真正顯示後的對話框。
public void Execute()
{
Task showAsk = new Task(ShowAskingDialog);
Task hideAsk = new Task(HideAskingByCode);
showAsk.Start();
hideAsk.Start();
}
public async void ShowAskingDialog()
{
Thread.Sleep(3000);
this.MetroDialogOptions.ColorScheme = MetroDialogColorScheme.Accented;
var msgbox_settings = new MetroDialogSettings {
AffirmativeButtonText = "I know", NegativeButtonText = "I don't know" };
// puase at asking MessaageDialog
var isKnow = await this.ShowMessageAsync(
"Question", "Do you know WPF?",
MessageDialogStyle.AffirmativeAndNegative, msgbox_settings);
}
public void HideAskingByCode()
{
Thread.Sleep(5000);
//How to Hide the MessageDialog by code, not by user click Button?
HideMessageDialog();
}
的MessageDialog會顯示這樣的,鑲嵌在主窗口:
好於隱藏它在'Execute(bool hide)'中傳遞bool參數,然後根據傳遞的參數,調用'Task showAsk = new Task(ShowAskingDialog); showAsk.Start();' –
謝謝,我想要做的是在對話框真正顯示後,如何隱藏它,因爲我正在做的事情需要中斷問題,並且必須保持主窗口在同時。我會把這個祕密加入到問題中。 –
好吧,如果是這樣[這可能會派上用場](https://stackoverflow.com/questions/37789431/hide-all-visible-metro-dialogs-before-showing-another-one) –