2015-06-12 3 views
0

Я пытаюсь установить значение свойства my dependency, но он всегда устанавливает значение null.SetValue делает dependencyProperty null

[Description("Binded destination list"), Category("Data")] 
public static readonly DependencyProperty ItemsProperty = DependencyProperty.Register("DestinationList", typeof(IEnumerable<TestEntity>), typeof(ListBoxEditLookup), new FrameworkPropertyMetadata(IsDestinationListChangedCallback) { BindsTwoWayByDefault = true, DefaultUpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged}); 

public IEnumerable<TestEntity> DestinationList 
{ 
    get { return GetValue(ItemsProperty) as IEnumerable<TestEntity>; } 
    set 
    { 
      //After this line it becomes null 
      SetValue(ItemsProperty, value); 
    } 
} 

Когда я проверяю значение стоимости он фактически заполнен значениями и типа IEnumerable<TestEntity>, но по какой-то причине он говорит нулевой! И когда я устанавливаю все объекты типа вместо IEnumerable, он работает.

+0

Когда вы проверки свойства? Он может быть нулевым, потому что вы проверяете его ** слишком рано **. Возможно, вы сможете проверить его после завершения загрузки. –

+0

Элемент управления загружен, и я изменяю vallue, когда я проверяю поле, так что это не проблема. Также исходное значение из viewmodel устанавливается правильно. Только когда я изменяю значение внутри элемента управления, это происходит неправильно! – kevingoos

ответ

0

Я нашел эту проблему, потому что я переплетен с ObservableCollection, он не может бросить на IEnumerable

Смежные вопросы