#c# #wpf
#c# #wpf
Вопрос:
Я определяю свойство зависимости в одном из своих классов. Могу ли я использовать это свойство зависимости в качестве цели привязки? Если да, то как мне сделать это в коде?
Комментарии:
1. Точно так же, как и с любым другим свойством.
2. Спасибо svick. Я не смог понять, как это сделать. Я думал, что только классы, производные от FrameworkElement, будут делать это, вызывая его метод SetBinding . Но это можно сделать с помощью BindingOpeations . SetBinding(DependencyObject, dp, привязка). Еще раз спасибо.
3. Свойства Dependecy работают со всеми классами, которые являются производными от
DependencyObject
, это не обязательноFrameworkElement
.4. Svick, существуют ли другие способы установки привязки в коде, кроме этих: 1. FrameworkElement. SetBinding(..) 2. Операции привязки. SetBinding(…)
Ответ №1:
В WPF могут быть только свойства зависимостей Target
Binding
. Источником привязки может быть любой объект CLR. Свойства зависимостей отображаются объектами зависимостей.
Например.
var binding = new Binding("EmployeeName");
myTextBlock.SetBinding(TextBlock.TextProperty, binding);
Приведенный выше код связывается EmployeeName
из контекста данных Text
со свойством myTextBlock .