Привязка данных XAML не удалась, несмотря на правильность проектированияC#

Место общения программистов C#
Ответить
Anonymous
 Привязка данных XAML не удалась, несмотря на правильность проектирования

Сообщение Anonymous »

В проекте WPF у меня есть UserControl под названием RectZone
, который начинается с В коде определены зависимости свойств:

Код: Выделить всё

public int FrameThickness
{
get { return (int)GetValue(FrameThicknessProperty); }
set { SetValue(FrameThicknessProperty, value); }
}

public static readonly DependencyProperty FrameThicknessProperty =
DependencyProperty.Register(nameof(FrameThickness), typeof(int), typeof(RectZone), new PropertyMetadata(1));

public string Title
{
get { return (string)GetValue(TitleProperty); }
set { SetValue(TitleProperty, value); }
}

public static readonly DependencyProperty TitleProperty =
DependencyProperty.Register(nameof(Title), typeof(string), typeof(RectZone), new PropertyMetadata("title"));

public ImageBrush? ZoneImage
{
get { return (ImageBrush)GetValue(ZoneImageProperty); }
set { SetValue(ZoneImageProperty, value);  }
}

public static readonly DependencyProperty ZoneImageProperty =
DependencyProperty.Register(nameof(ZoneImage), typeof(ImageBrush), typeof(RectZone), new PropertyMetadata(null));

public Visibility LogVisibility
{
get { return (Visibility)GetValue(LogVisibilityProperty); }
set { SetValue(LogVisibilityProperty, value); }
}

public static readonly DependencyProperty LogVisibilityProperty =
DependencyProperty.Register(nameof(LogVisibility), typeof(Visibility), typeof(RectZone), new PropertyMetadata(Visibility.Visible));
Я считаю, что все это правильно, у дизайнера VS2022 проблем нет, тем не менее, я получаю ошибки привязки XAML:
Изображение

текстовая версия для одного из них:

Код: Выделить всё

Severity: Error
Count: 4
Data Context: Visibility
Binding Path: TitleVisibility
Target: RectZone.TitleVisibility
Target Type: Visibility
Description File: TitleVisibility property not found on object of type Visibility
Итак:
  • что не так в моем коде?
  • Я думал, что RelativeSource={RelativeSource AncestorType=control:RectZone полностью определит контекст данных, но ошибки привязки показывают, что это не так: почему?
  • если не то я делаю неправильно с точки зрения контекста данных?


Подробнее здесь: https://stackoverflow.com/questions/791 ... orrectness
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»