質問

私のWinRTアプリでMessagesialogを閉じようとしています。私は一度に2つのメッセージダイアログを表示しようとした場合、私はunauthorizedAccessExceptionを取得しました。これを回避するには、開いている場合は既存のメッセージダイアログを閉じます。これを使用してダイアログを表示します。

    MessageDialog md = new MessageDialog(" ");

    private void MessageBox(string s)
    {
        Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
        {
            md.Content = s;
            //CLOSE HERE
            md.ShowAsync();
        }
        );
    }
.

どのように閉じますか?

役に立ちましたか?

解決

それを閉じる方法を見つけようとする代わりに、これを試してください AsyncCommandのインスタンス変数を宣言します。

AsyncCommand command;

command = md.ShowAsync();
.

その後、メソッドを実行する前に、コマンドがNULL

の場合はチェックしてください。
if(command!=null)
{
command.Cancel();
}
.

// Stuff / Tryagain Block

を実行してください

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top