我可以创建一个这样的命令来检查我的视图模型的某些属性是否可以执行:AddNewSectionCommand = ReactiveCommand
.CreateFromTask(() => AddNewSectionAsync(NewSectionTitle),
this.WhenAny(x => x.NewSectionTitle, x => !string.IsNullOrWhiteSpace(x.Value)));是否也可以为CommandParameter我通过 WPF 传入,如果,如何?因为有时我直接想用 UI 中的东西作为命令的参数,但也想在之前检查有效性。到目前为止,我必须通过将值绑定到视图模型属性并使用上面的方法来做到这一点,这会使我的视图模型与许多多余的东西杂乱无章。
1 回答
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
不,canExecute 没有 CommandParameter。vm 属性路由是要走的路。所有 ReactiveUI “入门”类型的示例都一直使用这种方法(例如用户名/密码),这是有道理的,因为 vm 应该负责确定可执行性。主要原因之一是单元测试要容易得多。所以我觉得添加到虚拟机中的额外属性非常值得,而且一点也不多余。
- 1 回答
- 0 关注
- 99 浏览
添加回答
举报
0/150
提交
取消