Не удается преобразовать значение в атрибуте «attr]» на объект типа «System.Windows.templatebindingextension»
-
25-09-2019 - |
Вопрос
Я получаю эту ошибку, когда определяю свои прикрепленные свойства зависимости в классе за пределами классовой иерархии и установите владельца на общий родительский класс.
Прилагаемая собственность зависимости в классе Windowbase (внешняя класса иерархии => сгенерированная ошибка):
public static readonly DependencyProperty AreaColorProperty =
DependencyProperty.RegisterAttached("AreaColor", typeof(AreaColor), typeof(Window));
TemplateBinding, который не удается
{TemplateBinding local:WindowBase.AreaColor}
Если я вместо этого определяю свойство приложенного зависимости в классе в классе Heirarchy и установить владельца в этот класс, то я не получаю никаких ошибок, почему это?
Прилагаемая собственность зависимости в оконном базе (в пределах классовой иерархии => Нет ошибок):
public static readonly DependencyProperty AreaColorProperty =
DependencyProperty.RegisterAttached("AreaColor", typeof(AreaColor), typeof(WindowBase));
С наилучшими пожеланиями, Джеспер
Решение
Я решил проблему, переключаясь на относительный привязку источника:
{Binding RelativeSource={RelativeSource AncestorType={x:Type Window}}, Path=(Window.CaseAreaColor)}
Не связан с StackOverflow