我试图找到这些方法之间存在一些差异。是否存在这样的行为被用来和相同的功能无法与附加属性进行的任何情况吗?

有帮助吗?

解决方案

没有。行为基本上只是在附加属性的顶部上的好得多的抽象。

通过使用Behavior<T>,您可以访问直接AssociatedObject,以及连接和拆卸的行为,很容易在运行时的能力。

您可以用附加属性做到这一点,但它需要增加大量额外的管道的。

其他提示

我倾向于使用行为添加功能,这使得显着的变化。而我使用附加属性将附加信息添加到其随后使用其他对象的对象。

E.g。 Grid.Row使一个很好的附加属性,因为它是用来通过网格而不是目标。在另一方面,自动更正会好好表现,因为这将使得在对象上明显的变化。

Behviors基于附加属性。这意味着,如果你不能找到具体的行为 - 你写你自己,无论是基于通过混合或通过创建自己的AP ...

提供behavoirs框架

我总是尽管这行为是附加属性力量的伟大证据。太不可思议了什么,你可以与他们得到的。

这是不是答案。但是,最好的解释,我可以找到关于此主题 的http:// briannoyesblog .azurewebsites.net / 2012/12/20 /附-行为-VS附加的属性-VS - 共混 - 行为/

布赖恩诺伊斯在他的文章清楚地描述每个概念之间的差异。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top