什么是依赖属性?它与普通属性有何不同?依赖属性的目的是什么?为什么会使用它?在何时使用它?可能性:
什么是依赖属性?
什么是依赖属性?它与普通属性有何不同?依赖属性的目的是什么?为什么会使用它?在何时使用它?可能性:
什么是依赖属性?
依赖属性的目的是提供一种基于其他输入值计算属性值的方式。
这些其他输入值可能包括系统属性,例如主题和用户偏好,实时属性确定机制,例如数据绑定和动画/故事板,多次使用模板,如资源和样式,或通过与元素树中的其他元素之间的父子关系了解的值。
它具有以下功能:
可以在样式中设置该属性。
可以通过数据绑定设置该属性。
可以使用动态资源引用设置该属性。
该属性的值可以自动从元素树中的父元素继承。
可以对该属性进行动画处理。
该属性可以报告先前的属性值已更改并且可以强制执行属性值。
该属性向WPF报告信息,例如更改属性值是否需要布局系统重新组合元素的可视化。
该属性在Visual Studio的WPF设计器中获得支持。例如,可以在“属性”窗口中编辑该属性。
(内容摘自MSDN)
如果您谈论的是具有 Dependency 属性的属性(如 Microsoft.Practices.Unity
中定义的),
[Dependency]
public string MyProperty { get; set; }
这个属性被Unity框架用于依赖注入(DI),基本上,属性值是由DI框架在运行时设置的,而不是直接在代码中设置的。
然而,在System.Runtime.CompilerServices
中还定义了另一个Dependency属性。请您更新您的问题,说明您指的是哪一个。