Переплет коллекции в серебряном свете - PullRequest
0 голосов
/ 15 июня 2010

Например, у меня есть коллекция целых чисел 1 - 10. Я хочу динамически отображать 4 (может быть 5, 6, 7) столбца в сетке данных в silverlight.Как я могу связать коллекцию с сеткой данных для достижения следующего?

        C1    C2    C3    C4
R1       1     2     3     4 

R2       5     6     7     8

R3       9     10

Приветствия

1 Ответ

1 голос
/ 15 июня 2010

К сожалению, ответ, вероятно, заключается в том, что DataGrid не является подходящим инструментом для этой работы. DataGrid предназначен для отображения табличных данных, подобно электронной таблице, поэтому на самом деле перенос не является частью дизайна.

К счастью, Silverlight (и Silverlight Toolkit) действительно дают вам инструменты, необходимые для достижения чего-то подобного. ItemsControl разработан специально для создания пользовательских представлений списков данных. Так как стандартный набор инструментов Silverlight не включает в себя «WrapPanel», вам также нужно взять превосходный набор инструментов Silverlight, в котором он есть.

Затем вы можете объединить ItemsControl и WrapPanel, чтобы получить набор оберток данных.

<ItemsControl ItemsSource="{Binding NumbersList}">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <controlsToolkit:WrapPanel />
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding}" />
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>
...