WPF:如何使用命令和输入绑定
命令和输入绑定在WPF中似乎非常复杂 – 将特定命令绑定到某些输入似乎并不总是有效。 我该怎么做呢?
– 自己回答 –
我用自己的发现更新了个人答案,考虑到我花了多长时间才找到信息,理解并实际实现这些复杂的事情。
WPF中的绑定似乎是一个不友好的概念,特别是如果你没有经验。 希望这会让人们的生活更轻松。
首先,在xaml文件的顶部添加应用程序命名空间,该文件将使用绑定:ex。
xmlns:main="clr-namespace:MyApplication"
接下来,在主窗口类之外添加一个自定义静态类来包含命令:ex。
public static class Command { public static RoutedCommand GSToggleCmd = new RoutedCommand(); public static RoutedCommand ScreenZoomCmd = new RoutedCommand(); }
我的主要窗口类恰好是’MainWindow’; 我在它下面定义了Command类。
最后,在xaml文件中添加命令绑定
Command=""
指的是您将绑定到的RoutedCommand
。 我将命名空间命名为main
,因此语法为main:Command.nameofcommand
Executed=""
是指触发命令时调用的函数。
Executed
function示例:
private void ApplyScreenFitCmd( object sender, ExecutedRoutedEventArgs args ) { string proportionStr = args.Parameter as string; }
就是这样。 在WPF
使用CommandBindings
简约方法。
要添加命令,只需RoutedCommand
Command
类中的新静态RoutedCommand
,并在Window.CommandBindings
下的xaml文件中添加CommandBinding
注意:
Visual Studio的Xaml编辑器可能会首先抱怨某些命令无法找到。 构建项目将解决问题。
更多信息 :
您还可以通过InputBindings触发CommandBindings
。 (关键触发器)
示例(放在将使用它们的Xaml文件中):
所以它基本上是Key
触发KeyBinding
,它反过来触发指定命令的CommandBinding
,触发相应的调用函数。
与上面的示例一样,您还可以定义CommandParameter
以将参数发送到最终调用的函数。 关于这一点的好处是,像上面一样,你可以通过在不同的CommandParameters
使用来重用相同的CommandBinding
。
您还可以通过Buttons,MenuItems等触发CommandBindings
。
例:
这与InputBindings
语法相同。
我花了一段时间才采用简约,统一的方式在WPF中使用绑定。 我希望这篇文章可以防止这个概念容易引起的所有斗争。
上述就是C#学习教程:WPF:如何使用命令和输入绑定分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1003577.html