mvvm模式里command经常写在vm中。而command只能传入一个对象作为执行时的参数,若要传入多个参数,在.cs文件(即调用vm的command)中,只需要把多个参数加到一个集合里,传入command时就把集合当单参数对象传入就行了。
如:
但如果在xaml中用到如blend的InvokeCommandAction进行command的绑定,又如何在xaml中进行传入多参数??
方法有许多种。小弟不才,自己开发了2个类来解决这问题。先说明一下,此方法只使用与silverlight4或以上版本。
先看看

在MVVM模式下,通常在ViewModel中定义Command,但Command仅能接收一个对象作为参数。文章介绍了如何在XAML中通过 Blend 的 InvokeCommandAction 绑定Command并传递多个参数。通过自定义 MultiDelegateObjects 类,可以在XAML中定义多个参数,然后在ViewModel中按Key或索引访问这些参数。此外,还提供了DelegateCommand的实现示例。

7456

被折叠的 条评论
为什么被折叠?



