jjzjj

RelayCommand

全部标签

c# - 为什么 RelayCommand RaiseCanExecuteChanged 在单元测试中不起作用?

我正在使用Nuget(4.1.23.0)上可用的当前版本的MvvmLight,调用RaiseCanExecuteChanged似乎在单元测试中没有做任何事情。场景很简单,我有一个命令:publicRelayCommandFooCommand{get;privateset;}我在View模型构造函数中新建它并将它指向一些私有(private)方法:FooCommand=newRelayCommand(Foo,CanFoo);privatevoidFoo(){//dosomefooing.}privateboolCanFoo(){returnSomeRequiredProperty!=nu

c# - RelayCommand 在一段时间后停止工作

我在使用GalaSoft的RelayCommand时遇到了一些问题。我有一个有效的NextCommand属性,但只有几次。之后,它就完全停止工作了。您可以使用示例项目进行尝试:http://s000.tinyupload.com/?file_id=65828891881629261404行为如下:下一个命令:弹出所有项目直到事件索引如果剩余的元素少于50件,则推送1件新元素将新项目标记为事件后退命令:将事件索引向后移动1个位置复制步骤:'+'(OemPlus)键已绑定(bind)到NextCommand'-'(OemMinus)键已绑定(bind)到BackCommand按住“+”键直

c# - RelayCommand<T> 上的 CanExecute 不起作用

我正在使用MVVMLightV3alpha3编写一个WPF4应用程序(使用VS2010RC),我在这里遇到了一些奇怪的行为......我有一个命令可以打开Window,并且那个Window创建了ViewModel等等-没有什么奇怪的。在那Window我有一些RelayCommand例如:CategoryBeenSelected=newRelayCommand(()=>OnCategoryUpdate=true);没有什么奇怪的-它按我预期的那样工作。问题是我不能使用通用RelayCommand的CanExecute方法/lambda表达式。这个有效:DeleteCategoryComm

c# - 在 View 模型中使用 ICommand 可以吗

大多数WPFmvvm应用程序,我们在View模型中使用ICommand。但它指的是System.Windows.Input。所以View模型现在与System.Windows.Input命名空间紧密结合。根据我的理解,View模型应该能够在普通的C#winform应用程序或asp.net应用程序中使用。通常我们使用以下代码行来执行RelayCommand实现的命令。privateRelayCommandtestCommand;//orprivateICommandtestCommand;publicICommandTestCommand{get{returntestCommand??(

c# - 是否需要 relaycommand 的异步版本才能正确运行异步方法

我在View模型中定义了以下代码。我认为Func类型的SaveAsync正在转换为Action,因为RelayCommand采取的是Action而不是Func但我不清楚这意味着什么。1)RelayCommand是否需要换成异步版本(RelayCommandAsync)?2)关于异步,当前代码究竟在做什么?3)如果有什么我可以/应该改变以改进/纠正它怎么办?privateICommand_saveCommand;publicICommandSaveCommand{get{return_saveCommand??(_saveCommand=newRelayCommand(async()=>

c# - 简化 WPF MVVM ViewModel 中的 RelayCommand/DelegateCommand

如果您正在执行MVVM并使用命令,您会经常在ViewModel上看到由私有(private)RelayCommand或DelegateCommand字段支持的ICommand属性,例如MSDN上原始MVVM文章中的这个示例:RelayCommand_saveCommand;publicICommandSaveCommand{get{if(_saveCommand==null){_saveCommand=newRelayCommand(param=>this.Save(),param=>this.CanSave);}return_saveCommand;}}但是,这会造成很多困惑,并使设

c# - 简化 WPF MVVM ViewModel 中的 RelayCommand/DelegateCommand

如果您正在执行MVVM并使用命令,您会经常在ViewModel上看到由私有(private)RelayCommand或DelegateCommand字段支持的ICommand属性,例如MSDN上原始MVVM文章中的这个示例:RelayCommand_saveCommand;publicICommandSaveCommand{get{if(_saveCommand==null){_saveCommand=newRelayCommand(param=>this.Save(),param=>this.CanSave);}return_saveCommand;}}但是,这会造成很多困惑,并使设

c# - 如何将 RelayCommand 与 MVVM Light 框架一起使用

我刚刚开始学习MVVMLight框架,我找不到任何关于如何使用RelayCommand的直接示例。为了学习的目的,我只想在我的View中有一个按钮,当点击它时显示一个helloworld消息框,并且每偶数分钟启用一次(基本上如果DateTime.Now.Minute%2==0).按钮XAML的外观如何以及如何在ViewModel中定义RelayCommandHelloWorld?感谢您的帮助! 最佳答案 RelayCommand的目的是实现Button控件所需的ICommand接口(interface),并将调用传递给通常位于它们旁

c# - 如何将 RelayCommand 与 MVVM Light 框架一起使用

我刚刚开始学习MVVMLight框架,我找不到任何关于如何使用RelayCommand的直接示例。为了学习的目的,我只想在我的View中有一个按钮,当点击它时显示一个helloworld消息框,并且每偶数分钟启用一次(基本上如果DateTime.Now.Minute%2==0).按钮XAML的外观如何以及如何在ViewModel中定义RelayCommandHelloWorld?感谢您的帮助! 最佳答案 RelayCommand的目的是实现Button控件所需的ICommand接口(interface),并将调用传递给通常位于它们旁

CommunityToolkit.Mvvm学习笔记(6)——RelayCommand

文章目录一、前言二、RelayCommand2.1.概述2.2.它们是如何工作的2.3.简单使用无参命令2.4.使用带参命令三、小结一、前言由于项目时间比较紧,所以先拣使用频繁的模块学习了。ComponentModel中的ObservableValidator等后面有空再学。这篇先看命令RelayCommand,毕竟WPF中命令与变量的绑定是两大主要绑定。如果说属性绑定是向UI暴露数据,那Command就是向UI暴露方法(或者说逻辑)。Notes:这边说的暴露是解耦的,不管你绑定的变量或者命令是否存在,界面都能独立运行。二、RelayCommand2.1.概述MVVMToolkit中的Rela
12