什么时候使用WPF/MVVM的事件和命令?我正在练习如何使用MVVM模式编写WPF应用程序。到目前为止,我还没有在我的代码中使用过命令。在我的Viewmodel中,我实现了INotifyPropertyChanged并使用(eventPropertyChangedEventHandlerPropertyChanged)来触发事件。为什么我觉得我仍然怀念WPF关于如何使用命令的概念?什么时候使用命令合适?WPF中的命令用于抽象用户触发的操作,例如单击按钮或按键。这是一个基本示例:假设您要在用户单击“搜索”按钮时或在搜索框获得焦点时按回车键时在数据库中搜索员工。您可以这样定义ViewModel:publicclassMyViewModel:ViewModelBase{publicstringSearchText{get;set;}//NotifyPropertyChanged等publicCommandSearchCommand{get;set;}publicMyViewModel(){//实例化commandSearchCommand=newDelegateCommand(OnSearch);}privatevoidOnSearch(){//...根据SearchText执行搜索}}你的观点:注意KeyBinding和Button的Command属性如何绑定到ViewModel(SearchCommand)中的相同命令。这有助于重用,还有助于将实际逻辑保留在ViewModel中,具有所有优点(可测试性等),同时保持视图干净且无代码。有趣的是,完全没有必要使用原来的Command概念:)。只需使用MVVM和免费的开源应用程序框架库Caliburn.Micro,您就可以构建具有松散耦合设计(xaml)和业务逻辑(c#/vb代码)的所有优势的大型复杂应用程序。免责声明:我只是这个图书馆的快乐用户,与其创建者没有任何关系,所以这不是付费广告或类似的东西。请从官方文档中查看这个非常基本的例子:->基本配置、操作和约定给它一个机会,您将永远不需要普通的WPF命令;)以上是C#学习教程:何时使用WPF/MVVM事件和命令?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
