Meine Anwendung benötigt fast 4 Sekunden, um vollständig herunterzufahren, nachdem der Benutzer das Herunterfahren bestätigt hat. Ich versuche innerhalb dieser 3 Sekunden dem Benutzer etwas Aktivität und vielleicht einen Fortschritt zu zeigen. So würde das Szenario etwas ähnlich sein wieSo stellen Sie "Laden" in einer GUI dar
ButtonClose_Click() -> Sind Sie sicher, dass Sie beenden möchten? -> Ja -> „Schließen“
Ich habe versucht, nur ein Fenster anzuzeigen (messagebox), aber ich bin mit DevExpress Fenster und sie sind entweder OkCancel
, Ok
, YesNo
und YesNoCancel
so im Grunde braucht es eine Benutzereingabe weiter:
Application.Current.Dispatcher.Invoke(
() =>
{
DXMessageBox.Show(Application.Current.MainWindow,
"Text Here..", "Title Here.. ", MessageBoxButton.OKCancel, MessageBoxImage.Information); // Ok by Default
});
Das ist, was ich habe:
var result = DXMessageBox.Show(Application.Current.MainWindow,
"Are you sure you want to EXIT the application?",
"Attention", MessageBoxButton.OKCancel, MessageBoxImage.);
if (result == MessageBoxResult.OK)
{
//
// I want to show or display some "loading" activity here till the below code finishes executing"
//
mainViewModel.SaveDatabase(); // save database+
mainViewModel.CaptureViewModel.cameraController.TurnCameraLights(false, false, false); // turn off some lights
mainViewModel.CaptureViewModel.Uninitialize(); // clear stuff
Environment.Exit(0);
}
Wie könnte ich das angehen?
Was ist mit dem Standard-Cursor beschäftigt? –
@Cody das ist eine gute Idee, aber es gibt keine Maus. Es ist eine Touch-Anwendung und auf Tablets –
Warum der Downvote? –