Impossibile convertire il valore dell'attributo '[attr]' a oggetto di tipo 'System.Windows.TemplateBindingExtension'
-
25-09-2019 - |
Domanda
ottengo questo errore quando mi definisco i miei proprietà di dipendenza allegati in una classe al di fuori della gerarchia di classe e impostare il proprietario di una classe genitore comune.
In un rapporto proprietà di dipendenza in classe WindowBase (gerarchia di classe al di fuori => errore generato):
public static readonly DependencyProperty AreaColorProperty =
DependencyProperty.RegisterAttached("AreaColor", typeof(AreaColor), typeof(Window));
TemplateBinding che non riesce
{TemplateBinding local:WindowBase.AreaColor}
Se io invece definisco la proprietà di dipendenza allegato in una classe all'interno della gerarchia di classe e impostare il proprietario di questa classe, quindi non ottengo errori, perché è questo?
proprietà di dipendenza Allegato in WindowBase (entro gerarchia di classe => nessun errore):
public static readonly DependencyProperty AreaColorProperty =
DependencyProperty.RegisterAttached("AreaColor", typeof(AreaColor), typeof(WindowBase));
Con i migliori saluti, Jesper
Soluzione
I risolto il problema passando alla sorgente relativo binding:
{Binding RelativeSource={RelativeSource AncestorType={x:Type Window}}, Path=(Window.CaseAreaColor)}