WPF автоматически перечисляет элементы из контекста - PullRequest
1 голос
/ 20 марта 2019

Допустим, у меня есть класс A .Я уже создал UserControle X , который использует A в качестве DataContext.Сейчас есть класс B .Класс B не содержит ничего, кроме Списка, заполненного экземплярами A .Экземпляр B - это DataContext моего текущего представления.

Какой лучший способ показать для всех экземпляров A в списке текущего DataContext элемент Usercontrole X?

Нужен ли конвертер значений?Или есть более простой способ.

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

1 Ответ

1 голос
/ 20 марта 2019

Вы можете использовать ItemsControl с ItemTemplate. Привязать ItemsControl к общедоступному свойству коллекции и добавить UserControl к ItemTemplate:

<ItemsControl ItemsSource="{Binding TheListProperty}">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <!-- The UserControl will inherit the current item in 'TheListProperty' as its DataContext -->
            <local:UserControlX />
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

Убедитесь, что вы явно не установили DataContext из UserControl. Он должен наследовать DataContext от текущего элемента в ItemsControl.

...