Ich bind DelegateCommands auf Schaltflächen in der Benutzeroberfläche. Und ich verwende kein Prisma. Jetzt möchte ich bestimmte Steuerelemente auf der Benutzeroberfläche deaktivieren/ausblenden, wenn auf eine Schaltfläche geklickt wird.Deaktivieren Sie mehrere GUI-Steuerelemente beim Klicken auf die Schaltfläche
Muss ich die Disable/Hide-Logik in den Execute-Handler des DelegateCommand selbst setzen? Besonderer Fokus hier: Hintergrund Worker Thread.
this.MyCommand = new DelegateCommand(MyExecutehandler);
void MyExecutehandler(object obj){
// 1.) disable controls here
// 2.) long running operation on background worker here
// 3.) enable the controls again in the worker_completed handler?
}
Die Steuerelemente werden dann über MVVM deaktiviert/aktiviert.
Ein Vorschlag. Versuchen Sie 'Async erwarten 'anstelle von BG-Arbeiter. Und ich finde nichts falsch beim Schreiben der Sperrlogik im Ausführungshandler des Delegatbefehls. – ViVi
Hm, ja, wenn es reine MVVM ist, sollte das auch funktionieren, weil ich den Dispatcher in reinem MVVM nicht haben werde. – Legends
Das ist ein Missverständnis. Sie können 'Dispatcher' auch in reinem MVVM haben. :) – ViVi