Dav*_*ave 3 wpf relaycommand mvvm-light
我不知道Josh Smith和Laurent Bugnion的RelayCommand的实现是否有区别,但在我看过的每一个地方,听起来像RelayCommand的Execute部分可以带0或1个参数.我只能使它与0一起工作.当我尝试类似的东西时:
public class Test
{
public RelayCommand MyCommand { get; set; }
public Test()
{
MyCommand = new RelayCommand((param) => SomeFunc(param));
}
private void SomeFunc( object param)
{
}
}
Run Code Online (Sandbox Code Playgroud)
我收到错误:Delegate 'System.Action' does not take '1' arguments.为了确保我不是疯了,我去了RelayCommand的定义,以确保我的解决方案中没有一些流氓实现,但果然,它只是Action,而不是Action <>.
我到底在这里错过了什么?
RelayCommand(在MVVM Light中)的非泛型实现不接受参数.使用RelayCommand<Object>相反,或(甚至更好)RelayCommand<YourCustomType>使参数SomeFunc为强类型.
| 归档时间: |
|
| 查看次数: |
2407 次 |
| 最近记录: |