【发布时间】:2011-11-01 05:07:12
【问题描述】:
我对 WPF 附加属性有点困惑。当您使用附加属性时,该附加属性只能由定义它的类读取和使用,对吗?例如,如果我想在按钮上使用一些附加属性作为悬停颜色,我可以从按钮的模板中获取附加属性值,并且我可以从按钮访问附加属性来设置悬停颜色吗?
【问题讨论】:
-
所有答案几乎就是您需要的一切,所以我想添加我最喜欢的附加属性用法,称为attached behaviors。我们经常使用它们,因为我们可以将自定义逻辑“注入”到我们需要覆盖的控件中。因此,我们可以混合和组合附加的行为,而无需仔细构建类层次结构。例如,自定义 TreeViewService.AllowSelectOnRightClick 就是附加行为的一个很好的例子。