在尝试学习GameLibrary示例应用程序的源代码时,我看到了这样一行代码:
ConventionManager.AddElementConvention<Rating>(Rating.ValueProperty, "Value", "ValueChanged");查看了Caliburn的来源,但无法真正理解元素约定是什么。
有没有人能简单描述一下?
发布于 2010-11-20 02:34:07
ConventionManager.AddElementConvention允许您为每个类型元素建立一组由约定系统使用的“默认”设置。
Rating.ValueProperty的第一个参数值告诉约定系统元素的默认可绑定属性是什么。因此,如果我们在操作控件上有一个约定匹配,我们将针对ValueProperty.Rating绑定中使用的默认属性。因此,如果您使用指向property.ElementName创建操作绑定,但未指定该属性,我们将退回到thrid参数,该参数表示控件的默认事件。因此,如果我们将一个操作附加到评分控件,但没有指定触发该操作的事件,则系统将回退到ValueChanged事件。这些元素约定允许开发人员在各种情况下提供尽可能多或尽可能少的信息,允许框架根据需要填充缺失的细节。
https://stackoverflow.com/questions/4227966
复制相似问题