Проблема, с которой я сталкиваюсь, вероятно, очень проста для решения, но с точки зрения новичка она кажется сложной.
Я создал 2 видимых окна одновременно, одно с ListBox, другое с TextBox. Я хотел бы программно привязать свойство window1.ListBox.SelectedValue к свойству window2.TextBox.Text. Я не использую преобразователи значений.
Код прост:
var binding = new Binding("SelectedValue");
binding.Source = window1.ListBox;
// binding.Path = new PropertyPath(ListBox.SelectedValueProperty);
var bound = window2.TextBox.SetBinding(TextBlock.TextProperty, binding);
Я хотел бы выполнить привязку с использованием экземпляра DependencyProperty вместо имени свойства по соображениям производительности, но я также пытался выполнить привязку по имени. Привязка просто не работает.
Вы можете скачать фиктивный проект VS2010 здесь.
Это приводит к другому вопросу — как отладить привязку, на какое событие (если есть) подписаться, чтобы обнаружить изменения привязки?