2

我正在研究 Silverlight(主要用于 Windows Phone 开发)。我阅读了 Silverlight 2 Unleashed,目前正在阅读 Silverlight 4 Unleashed。后者有一章关于依赖属性。正如我从本章中了解到的那样,依赖对象(具有依赖属性)用于 UI 控件对象以支持动画和数据绑定系统。好的。这很清楚。

现在,随着本章的继续,将讨论附加属性。使用它的主要原因(如书中以及互联网上所述)是为了防止创建子类并将附加属性添加到相关对象。由于附加属性已经是依赖属性,因此也添加了附加行为

现在的问题是:我该怎么做?子类化有什么问题?真的,为什么在处理附加属性时有很多代码?

4

1 回答 1

2

现在的问题是:我该怎么做?

让我们看一个很好的例子——布局。

上课Grid。如果我们想支持这一点,每个控件都需要有一个GridRowandGridColumn属性。但是,附加属性允许我们附加 Grid.Row到任何控件,这反过来又允许在Grid其内部正确布局该控件。

附加属性都以这种基本方式工作 - 它们允许您“附加”定义或帮助某些行为特征正常工作的东西,而无需更改“某物”本身。

于 2013-08-15T16:41:28.250 回答