none
Работа с DependencyProperty RRS feed

  • Вопрос

  • Доброго времени суток, решил написать свой UserControl но столкнулся с проблемой при объявлении свойства к которому хотел привязать данные  объявил его так:

    public ObservableCollection<LTypePerformance> SourceCollection
            {
                get
                {
                    return (ObservableCollection<LTypePerformance>)GetValue(ItemSource);
                }
                set
                {
                    SetValue(ItemSource, value);
                }
            }
    
    
            public static readonly DependencyProperty ItemSource =
                DependencyProperty.Register(
                "SourceCollection",
                typeof(ObservableCollection<LTypePerformance>),
                typeof(DispControl),
                new PropertyMetadata(new ObservableCollection<LTypePerformance>()));
    Свойство стало доступным в коде XAML но привязанные даные из колекции источника не передаются в UserControl при этом не возникает никаких ошибок. Подскажите пожалуйста что я сделал неправильно.

    26 июня 2016 г. 7:58

Ответы

  • Добрый день.

    1. Проверьте что коллекция которую вы пытаетесь передать имеет тот же тип, что и свойство.

    2. Проверьте, что у вас корректно прописан Binding (имя свойства и все такое).

    Если все правильно, то покажите как у вас сделано первое и второе, с высокой вероятностью, как и сказал LXGDARK, проблема где-то там.


    27 июня 2016 г. 6:00
    Отвечающий

Все ответы

  • А вы уверены, что проблема в приведенном коде, а не в самой привязке?

    Насколько мне хватает знаний C# с этим кодом все в порядке.


    VB.Net - WPF, UWP

    26 июня 2016 г. 11:34
    Отвечающий
  • Добрый день.

    1. Проверьте что коллекция которую вы пытаетесь передать имеет тот же тип, что и свойство.

    2. Проверьте, что у вас корректно прописан Binding (имя свойства и все такое).

    Если все правильно, то покажите как у вас сделано первое и второе, с высокой вероятностью, как и сказал LXGDARK, проблема где-то там.


    27 июня 2016 г. 6:00
    Отвечающий