【发布时间】:2011-03-22 11:17:32
【问题描述】:
【问题讨论】:
-
请修正拼写。
-
搜索dependency-properties wpf有很多信息
-
令人着迷的是,居然有人回滚了自动编辑。
标签: c# .net wpf silverlight dependency-properties
【问题讨论】:
标签: c# .net wpf silverlight dependency-properties
依赖属性:由 DependencyProperty 支持的属性。
依赖属性的目的是提供一种基于其他输入值计算属性值的方法。
这些其他输入可能包括系统属性(例如主题和用户偏好)、即时属性确定机制(例如数据绑定和动画/故事板)、多用途模板(例如资源和样式)或通过父级已知的值-与元素树中其他元素的子关系。
它具有以下功能:
可以在样式中设置属性。
可以通过数据绑定来设置属性。
可以使用动态资源引用设置该属性。
该属性可以自动从元素树中的父元素继承其值。
该属性可以设置动画。
该属性可以报告何时该属性的先前值已更改并且可以强制该属性值。
属性向 WPF 报告信息,例如更改属性值是否需要布局系统重新组合元素的视觉效果。
该属性在 Visual Studio 的 WPF 设计器中获得支持。例如,可以在“属性”窗口中编辑属性。
(内容取自 MSDN)
【讨论】:
Dependency properties 将它们的值存储在类之外,因此可以将属性分配给对象,而无需更改对象的类。它们还支持 WPF 中常见的一种情况,即一个对象可能具有很多属性,但只有少数具有非默认值。依赖属性可以有默认值,这样可以减少内存使用。还有更多,请阅读文章:MSDN 上的Dependency Properties Overview。
【讨论】:
我认为MSDN article 可以为您提供更多信息。
据我了解,依赖属性依赖于其他值。
依赖属性的用途 是提供一种计算方法 基于价值的财产价值 其他输入。 这些其他输入 可能包括系统属性,例如 作为主题和用户偏好, 即时财产确定 数据绑定等机制 动画/故事板,多用途 模板,例如资源和 样式或值通过 与他人的亲子关系 元素树中的元素。在 此外,依赖属性可以是 实施以提供独立的 验证、默认值、回调 监控其他人的变化 属性,以及一个系统,可以 强制属性值基于 潜在的运行时信息。 派生类也可以改变一些 一个特定的特征 通过覆盖现有属性 依赖属性元数据,而不是 而不是覆盖实际 现有属性的实现 或创建新属性。
【讨论】:
如果您谈论的是具有Dependency 属性(如Microsoft.Practices.Unity 中定义)的属性
[Dependency]
public string MyProperty { get; set; }
然后它被 Unity 框架用于依赖注入 (DI)。基本上,属性值由 DI 框架在运行时设置,而不是直接在您的代码中设置。
但是,System.Runtime.CompilerServices 中定义了另一个 Dependency 属性。请您更新您的问题与您的意思。
【讨论】: