【发布时间】:2011-09-07 11:14:33
【问题描述】:
所以,我是 Silverlight 开发的新手,我正在尝试找出并使用 Caliburn.Micro 框架。我知道 CM 使用约定来匹配视图模型中的属性与视图中的元素,并且默认约定可以在 CM 的 ConventionManager 类中找到。
我的情况是这样的:我有一个名为“库”的 TreeView(使用 Silverlight 工具包),并且我已成功地将我的视图模型中的 ObservableCollection 类型的属性绑定到 TreeView。该属性也被命名为“库”,因此 CM 完成了剩下的工作。
现在,我想在视图模型中创建一个属性,该属性将使用 TreeView 的 SelectedItem 进行设置。我应该如何使用 CM 的约定来做到这一点?我应该如何命名该属性?
最后,我希望在触发 TreeView 的 SelectedItemChanged 事件时调用视图模型中的方法。我应该如何命名该方法以便通过约定来完成?
有人可以帮忙吗?
艾森伯格……艾森伯格……(以我最好的本斯坦模仿)
谢谢, 大卫
编辑:我还应该注意,我已经修改了 CM 程序集,将以下行添加到 ConventionsManager 的构造函数中,因为它之前被排除在 Silverlight 版本的 CM dll 之外:
AddElementConvention(TreeView.ItemsSourceProperty, "SelectedItem", "SelectedItemChanged");
【问题讨论】:
标签: silverlight-4.0 mvvm caliburn.micro