Wie kann ich programmgesteuert Feuer einen Befehl
Ich habe eine ICommand
dass ich möchte, um Feuer zu machen (der execute-go) vom code; wie mache ich das?
- Wenn die
Execute()
Methode ist nicht das tun, was Sie erwarten, kann es hilfreich für uns zu haben-source-code zu betrachten.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie den Aufruf der
Execute
Methode.Vorausgesetzt, es gibt
someCommand
mitcommandArgs
:Wenn Sie
RoutedUICommand
's Ausführen und Die CanExecute -, sicher sein, um den pass in ein gültiges Ziel, so dass die korrekteCommandBinding
gefunden werden kann.Auch, wenn Ihr den Befehl der Handler nicht ändern Objekte Anzeigen Objekte direkt, sollten Sie mithilfe von Kent Boogaart ist DelegateCommand. Mit delegieren Befehle, um die business-Logik im ViewModel, das ist schön, und Sie sind besonders praktisch, wenn Sie müssen Befehle ausführen, die direkt aus dem code, und Sie haben keinen Zugriff auf die Ansicht (oder ein View-Objekt aus, das Sie hervorbringen können, um Ihre
CommandBindings
).Denken Sie daran, wenn Sie benötigen, rufen Sie ein anderes Ereignis von internen Komponenten, wie ein klicken Sie auf die Schaltfläche, die Methoden sehen startin mit Durchführen (wie PerformClick der a-Taste).
Anderen Antworten in Ordnung sind, verwenden Sie nur Ausgeführt...