No se puede convertir el valor de atributo '[attr]' a objeto de tipo 'System.Windows.TemplateBindingExtension'

StackOverflow https://stackoverflow.com/questions/2608082

Pregunta

Me sale este error cuando defino mis propiedades de dependencia unidos en una clase fuera de la jerarquía de clases y establecer el dueño de una clase padre común.

anexa propiedad de dependencia en la clase WindowBase (jerarquía de clases fuera => error generado):

public static readonly DependencyProperty AreaColorProperty =
DependencyProperty.RegisterAttached("AreaColor", typeof(AreaColor), typeof(Window));

TemplateBinding que falla

{TemplateBinding local:WindowBase.AreaColor}

Si en lugar de definir la propiedad de dependencia adjunta en una clase dentro de la jerarquía de clases y establecer el dueño de esta clase, entonces no sale algún error, ¿por qué es esto?

Se adjunta propiedad de dependencia en WindowBase (dentro de la jerarquía de clases => ningún error):

public static readonly DependencyProperty AreaColorProperty =
DependencyProperty.RegisterAttached("AreaColor", typeof(AreaColor), typeof(WindowBase));

Saludos cordiales, Jesper

¿Fue útil?

Solución

I resolvió el problema por el cambio a fuente relativa de unión:

{Binding RelativeSource={RelativeSource AncestorType={x:Type Window}}, Path=(Window.CaseAreaColor)}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top