假设有一个具有依赖属性(某个对象的集合)的 UserControl - 无论如何,当设置依赖属性时,自动执行视图模型公开的命令而不破坏封装并以“MVVM 方式”执行此操作?
是的,我知道我总是可以连接属性更改的静态处理程序,将对象转换为我的用户控件的实例,获取数据上下文,将其转换为视图模型并手动调用命令
编辑:也许一个例子会有所帮助。我的 UserControl 有一个“ItemsSource”依赖属性..我希望它可以设置为 ObjectA 的集合。我有一个“Items”依赖属性,它只能是可获取的,并且是 ObjectB 的集合。
我想要这样的行为,如果我设置 ItemSource,我的 ObjectAs 集合将由视图模型一对一地转换为 ObjectB,并且 Items 依赖属性将自动反映这一点。
为此,我需要一个只写的 ItemsSource 和一个只读的 Items 属性。