C# zu machen, Wie die async-MessageBox zurückgibt DialogResult?

Meine MessageBox ist async, aber wie kann ich return DialogResult?

Hier ist mein code:

class AsyncMessageBox
{
    private delegate void ShowMessageBoxDelegate(string strMessage, string strCaption, MessageBoxButtons enmButton, MessageBoxIcon enmImage);
    //Method invoked on a separate thread that shows the message box.
    private static void ShowMessageBox(string strMessage, string strCaption, MessageBoxButtons enmButton, MessageBoxIcon enmImage)
    {
        MessageBox.Show(strMessage, strCaption, enmButton, enmImage);
    }
    //Shows a message box from a separate worker thread.
    public void ShowMessageBoxAsync(string strMessage, string strCaption, MessageBoxButtons enmButton, MessageBoxIcon enmImage)
    {
        ShowMessageBoxDelegate caller = new ShowMessageBoxDelegate(ShowMessageBox);
        caller.BeginInvoke(strMessage, strCaption, enmButton, enmImage, null, null);
    }
}
  • Warum auf der Erde tun, Sie müssen asynchrone message-box?
  • Ich habe zwar keine Ahnung über die Verwendung von asynchronen message-box, aber in dem Fall, dass Sie wollen, um zu zeigen, eine nicht-blockierende messagebox und die Verwendung die dialogresult-Sie können Task.Run
  • Ich bin mit der asynchronen message-box im online-Programm. Dies hilft zu halten die Verbindung aufrecht. Zum Beispiel, wenn jemand trennen, dann zeigt die messagebox. Wenn jemand mehr trennen, dann zeigt er eine andere messagebox. Nun, es ist schwer zu erklären, aber ich bekam Antwort.
InformationsquelleAutor K.Rapur | 2016-01-17
Schreibe einen Kommentar