MVVM Light EventToCommand和Silverlight数据表单-我需要EventArgs和自定义CommandParameter。可能的
我将MVVM Light EventToCommand和Silverlight数据表单-我需要EventArgs和自定义CommandParameter。可能的,silverlight,mvvm,mvvm-light,dataform,eventtocommand,Silverlight,Mvvm,Mvvm Light,Dataform,Eventtocommand,我将数据表单绑定到RoleViewModel对象的集合。我正在使用MVVMLight的EventToCommand行为绑定到DataForm的EditEnding事件,以在编辑角色时通知我的ViewModel 现在,。。。用户编辑角色,可以单击“确定”、“取消”,也可以直接导航离开。此信息保存在DataFormEditedEventArgs中的DataFormEditAction属性中(确定为DataFormEditAction.Commit,其他为DataFormEditAction.Canc
数据表单
绑定到RoleViewModel对象的集合。我正在使用MVVMLight的EventToCommand
行为绑定到DataForm
的EditEnding
事件,以在编辑角色时通知我的ViewModel
现在,。。。用户编辑角色,可以单击“确定”、“取消”,也可以直接导航离开。此信息保存在DataFormEditedEventArgs
中的DataFormEditAction
属性中(确定为DataFormEditAction.Commit
,其他为DataFormEditAction.Cancel
)
问题是,我必须选择是选择PassEventArgsToCommand
,对命令RelayCommand
进行签名,还是将DataForm
的CurrentItem
绑定到行为的CommandParameter
,进行签名RelayCommand
。我需要两个
我需要EventArgs
来了解用户是否已取消编辑,如果他们没有取消编辑,我需要新角色将其保存回数据库
这里有人有什么聪明的建议吗?我想我可以把手弄脏,用两个参数创建第二个行为,但如果有更优雅的解决方案,我宁愿不要
任何帮助都将不胜感激
提前感谢。如果您的viewmodel将newrole的可绑定值保存到dataform,那么您可以传递EventArgsToCommand,并且可以在保存/更新/取消之前操作数据
这就是我们解决类似问题的方法。我等了很久了,等着有人回答这个问题。这正是我最后采取的方法,当然也是正确的方法。有些日子,我想一切都像钉子一样。:-)