Как связать коллекцию List <DataRow>в WPF XAML? - PullRequest
0 голосов
/ 14 мая 2010

Используя DataView, можно указать привязку для элементов управления в XAML, например, следующим образом:

<Image Source="{Binding Thumbnail}" />

У меня есть элемент управления, отображающий количество изображений. Я могу заставить это работать с DataView в качестве источника данных для элемента управления, но я хочу использовать коллекцию List объектов DataRow, которая не работает для меня. Мой источник данных:

List<DataRow>

Конечно, я мог бы преобразовать коллекцию List <DataRow> в DataTable и получить из нее DataView, но я действительно хотел бы перейти прямо к коллекции List <DataRow>. Как мне выполнить привязку в XAML для привязки к столбцу «Миниатюра» DataRow в коллекции List.

Edit:

Мне нужно иметь возможность читать данные только одним способом. Мне не нужно записывать изменения в коллекцию списков (плюс дополнительные пояснения выше).

Elan

1 Ответ

1 голос
/ 14 мая 2010

Вы можете сделать это, используя что-то вроде следующего:

    <ItemsControl x:Name="RowsContainer" ItemsSource="{Binding Rows}">
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <StackPanel Background="Azure"/>
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>

        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <StackPanel>
                    <TextBlock Text="{Binding [0]}" />
                </StackPanel>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>

Где " {Binding Rows} " относится к коллекции DataRowsCollection, а {Binding [0]} относится к первому столбцу строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...