wpf behavior

wpf - Interactividad. Comportamiento<T> vs propiedades adjuntas



behavior (4)

Esta no es la respuesta. Pero la mejor explicación que puedo encontrar sobre este tema http://briannoyesblog.azurewebsites.net/2012/12/20/attached-behaviors-vs-attached-properties-vs-blend-behaviors/

Brian Noyes en sus artículos describe claramente las diferencias entre cada uno de los conceptos.

Estoy tratando de encontrar algunas diferencias entre estos enfoques. ¿Existe alguna situación en la que se utilicen comportamientos y no se pueda realizar la misma funcionalidad con las propiedades adjuntas?


Los comportamientos se basan en propiedades adjuntas. Eso significa que si no puede encontrar un comportamiento específico, escriba el suyo propio, ya sea basado en el marco de comportamiento proporcionado por Blend o creando su propio AP ...

Siempre pensé que los comportamientos son una gran evidencia del poder de las propiedades adjuntas. Simplemente increíble lo que puedes conseguir con ellos.


No. Los comportamientos son básicamente una abstracción mucho mejor sobre las propiedades adjuntas.

Al usar Behavior<T> , usted obtiene acceso a AssociatedObject directamente, así como la capacidad de adjuntar y separar el comportamiento, fácilmente, en tiempo de ejecución.

Podría hacer esto con propiedades adjuntas, pero sería necesario agregar una gran cantidad de tuberías adicionales.


Tiendo a usar Comportamientos para agregar funcionalidad que hace cambios visibles. Mientras que yo uso las propiedades adjuntas para agregar información adicional a un objeto que posteriormente es utilizado por otros objetos.

Por ejemplo, Grid.Row es una buena propiedad adjunta, ya que es utilizada por Grid y no por el objetivo. Por otro lado, Autocorrección sería un buen comportamiento, ya que esto hará cambios visibles en el objeto.