Пользовательский набор ItemsSource UserControl не называется [дубликат]C#

Место общения программистов C#
Ответить
Anonymous
 Пользовательский набор ItemsSource UserControl не называется [дубликат]

Сообщение Anonymous »

Ссылка: пользовательское свойство ItemsSource для UserControl
У меня есть собственный UserControl для отображения набора совокупных данных для окна, в котором он содержится (список загрузок). . Основные сведения о содержащем окне: Код UserControl содержит

Код: Выделить всё

    public DownloadStatsControl()
{
InitializeComponent();

DataContext = this;
}

[Bindable(true)]
public IEnumerable ItemsSource
{
get => (IEnumerable)GetValue(ItemsSourceProperty);
set
{
if (value == null)
ClearValue(ItemsSourceProperty);
else
SetValue(ItemsSourceProperty, value);
}
}

// Using a DependencyProperty as the backing store for ItemsSource.  This enables animation, styling, binding, etc...
public static readonly DependencyProperty ItemsSourceProperty
= DependencyProperty.Register("ItemsSource", typeof(IEnumerable), typeof(DownloadStatsControl),
new FrameworkPropertyMetadata(null, new PropertyChangedCallback(OnItemsSourceChanged)));

private static void OnItemsSourceChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
{
var control = sender as DownloadStatsControl;

control?.OnItemsSourceChanged((FixedSizeQueue)e.OldValue, (FixedSizeQueue)e.NewValue);
}
ItemsControl отображает данные из привязанного источника (

Код: Выделить всё

Downloads). UserControl
не отображает данные. Моя проблема заключается в том, что набор для ItemsSource не вызывается. Вызывается конструктор.
Примечание: приведенный выше код отличается от указанного SO. Когда мне не удалось вызвать набор, я обратился к источнику ItemControl и вернул его к основам (т. е. просто использовал IEnumerable).
Что Я здесь пропал?
Редактировать: благодаря связанному ответу, он приблизил меня. Да, мой UserControl использовал себя как DataContext. Однако после внесения изменения в ссылку на родителя он по-прежнему не вызывал установщик. Так продолжалось до тех пор, пока я не поискал еще немного и не наткнулся на привязку WPF к родительскому контексту данных, где у меня были все необходимые фрагменты. Спасибо за подсказки.

Подробнее здесь: https://stackoverflow.com/questions/787 ... not-called
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»