Ich möchte ein Warte-GIF anzeigen, während ich eine Datei verifiziere und das habe ich bisher versucht.
Es gibt ein Formular - Form1, wo Benutzer auf eine Schaltfläche klicken, um eine Datei zu überprüfen, und es gibt ein anderes Formular - Warten, mit nur einer Bildbox, die ein gif-Bild zeigt.Modales Ladenfenster in Winforms für lang andauernden Prozess anzeigen
button_click()
{
Wait wait = new Wait();
wait.ShowDialog();
VerifyFile();
wait.Close();
}
Das Warteformular wird zwar angezeigt, es wird jedoch nicht geschlossen. Auch die Überprüfung wird nicht durchgeführt. Es wird nur fortgesetzt, wenn ich das Warteformular manuell schließe. Wie Sie das Warteformular automatisch schließen, sobald VerifyFile()
abgeschlossen ist.
Sie müssen sich um die Erstellung von Callbacks, Delegaten und asynchronen Prozessen kümmern. Der Prozess, auf den Sie warten, muss einen Rückruf an das wartende Formular senden, wenn es fertig ist, sodass das Warteformular geschlossen werden kann. Wenn Sie einen Fortschrittsbalken haben möchten, benötigen Sie während des langen Prozesses mehr Rückrufe. Das wird deine beste Wette sein. Es ist noch nichts, was ich getan habe, aber ich habe es nach meiner Erfahrung gesehen. –
Mögliches Duplikat von [Öffnen Sie eine zweite winform asynchron, aber verhalten Sie sich immer noch wie ein Kind zum übergeordneten Formular?] (Http://stackoverflow.com/questions/2435752/open-a-second-winform-asynchron- but-still-behave -as-a-child-to-the-parent-f) – NineBerry