wpf – 如何将命令附加到CheckBox的检查和取消选中?

前端之家收集整理的这篇文章主要介绍了wpf – 如何将命令附加到CheckBox的检查和取消选中?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的viewmodel中,我有两个命令:
ICommand ExecuteMeOnCheck { get; }
ICommand ExecuteMeOnUncheck { get; }

我希望将这些命令附加到CheckBox,并在检查时执行其中一个命令,而在取消选中时执行另一个命令.实现这一目标的最佳方法是什么,而不会因为代码隐藏而混淆View?

解决方法

我发现这样做的最简单方法是借用一堆代码.我还认为您不希望为状态更改公开两个事件.命令CheckedChangedCommand而不是Checked和Unchecked.将CheckBox.IsChecked依赖项属性绑定到viewmodelClass上的属性.这样,当您的命令执行时,您只需在viewmodel中检查该值.

首先,从WPF ViewModel toolkit开始使用DelegateCommand.从您的帖子中不清楚您是否是.

接下来,从此链接的“下载”选项卡下载.zip archive.

存档有一个名为EventBehavIoUrFactory的类,可以更轻松地设置DependencyProperty.回到上面链接的Home选项卡,Samuel告诉您如何将XAML中的Command连接到viewmodel.这里是:

<TextBox ff:TextBoxBehavIoUr.TextChangedCommand="{Binding TextChanged}"/>

我使用了三个类(DelegateCommand,EventBehavIoUrFactory和TextBoxBehavIoUr)行,并在大约五分钟内让TextChanged事件在我的项目中工作.

将它扩展到您需要做的其他控件的模式也很容易.我设法以相同的方式连接ListBox.SelectionChanged.创建一个新的ControlBehavIoUr类,并在所有实例中将“Control”替换为“TextBox”,并将DependencyProperty附加到新事件.

当你背后的代码是空的时候,这是一件很美妙的事情!

猜你在找的HTML相关文章