Wie ein gerouteten Befehl von einem bestimmten Ereignis ausgelöst?
-
02-10-2019 - |
Frage
Ich habe eine einfache Frage über Befehle in WPF: Ich habe eine Schaltfläche mit einem ICommand in die Command-Eigenschaft gebunden, und wenn ich auf diese Schaltfläche klicken, wird der Befehl gestartet, und wow es funktioniert:)
Jetzt whant ich einen bestimmten Befehl zu starten, wenn ich den Knopf bin nur nach unten drücken (
Lösung Sie sollten erwägen Ihre eigene Klasse auf Button
stützen und es mit Ihrem eigenen Satz von Command
, CommandTarget
und CommandParameter
ähnlichen Eigenschaften (möglicherweise sogar DependencyProperty
erstreckt Wenn Sie den Befehl feuern wollen, dies nur tun. void FireCommand()
{
var routedCommand = Command as RoutedCommand;
if (routedCommand != null)
{
routedCommand.Execute(CommandParameter, CommandTarget);
}
else if (Command != null)
{
Command.Execute(CommandParameter);
}
}