Как работат Binding + DependencyProperty ?
От: Аноним  
Дата: 25.04.11 17:44
Оценка:
Есть некий UserControl, в котором описано DependencyProperty :


public class MyControl : UserControl
{
   public static readonly MyItemsProperty = DependencyProperty.Register( "MyItems", typeof( IEnumerable<MyObject> ), typeof( MyControl ) );

   public IEnumerable<MyObject> MyItems 
   {
      get{ return (IEnumerable<MyObject>)GetValue( MyItemsProperty );
      set{ SetValue( MyItemsProperty, value ); }
   }
}


Далее в коде данный контрол создается динамически и к нему привязывается коллекция


var coll = new ObservableCollection<MyObject>();
..

MyControl ctrl = new MyControl();
ctrl.SetBinding( MyControl.MyItemsProperty, new Binding(){ Source = coll } );


Но значение свойству не присваивается, почему-то даже не происходит попытки его инициализировать ( если вставить в binding IValueConvertor, то не вызывается ни Convert, ни ConvertBack ).

Хотелось бы понять как работает Binding, например когда я вызываю SetBinding то осуществляется подписка на изменение свойства или что-то еще из за чего данный код не работает ?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.