2

我正在阅读 C# 2008 中的 WPF 食谱:

http://www.apress.com/book/view/9781430210849

从第三个配方开始,他们假设您知道依赖属性是如何工作的。

因此,经过一番谷歌搜索后,我通常理解这些是对象的属性,当它们放置在另一个对象中时“适应上下文”以适应宿主对象。我还“了解到”“你永远不会真正知道这些属性的价值是什么,因为它们取决于它们的上下文。”

但是本书中描述的大部分内容仍然让我不知道在构建应用程序时如何使用它们。

对于刚开始使用它们并想知道他们何时以及如何使用它们的人来说,谁有一个很好的依赖属性的隐喻或示例?

4

1 回答 1

3

依赖属性就像普通属性一样,只是它们有一些 WPF 使用的特殊“钩子”。

一件特别的事情是,有时如果您不设置属性值,它将从放置它的控件接收其值(因此,如果您为按钮设置字体,则按钮内的文本块将使用此字体,除非您指定文本块的不同字体),我认为这是所有“永远不知道值”废话的来源。

如果您正在编写 WPF 控件,您可能应该使用依赖属性,因为您可以指定更改是否应自动导致控件重新呈现自身(以及更多),并且您可以将它们用于数据绑定。

如果您正在编写从 Freezable 派生的类(直接或间接),则仅使用依赖属性将为您节省一些工作。

如果您正在编写一个不是 WPF 特定的类,那么可能没有理由使用依赖属性。

于 2009-01-26T09:58:58.023 回答