список, ограниченный коллекцией, с табличным расположением, где каждая ячейка является элементом коллекции

#silverlight #datagrid #listbox #grid

#silverlight #datagrid #список #сетка

Вопрос:

Я пытаюсь создать таблицу, в которой есть столбцы x и строки y. У этой таблицы может быть источник элемента, и каждая ячейка в этой таблице будет элементом. Например, как привязать коллекцию изображений к таблице, где каждое изображение является элементом. Если кто-то может реализовать это с помощью liskbox, так еще лучше

Это мой код:

 <ListBox Grid.Row="2">
    <ItemsControl ItemsSource="{Binding Projects, Mode=TwoWay}">
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <toolkit:WrapPanel />
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Image Source="{Binding Path=ProjectIcon, Mode=TwoWay}" Height="30" Width="30"  />
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
</ListBox>
  

Ответ №1:

Элемент управления, который вы ищете, является WrapPanel из инструментария Silverlight.

  <ItemsControl ItemsSource="{Binding ImageSet}">
    <ItemsControl.ItemsPanel>
       <ItemsPanelTemplate>
            <toolkit:WrapPanel />
       </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <ItemsControl.ItemTemplate>
       <DataTemplate>
          <Image Source="{Binding}" />
       </DataTemplate>
    </ItemsControl.ItemTemplate>
 </ItemsControl>
  

Комментарии:

1. Спасибо. когда вы пишете элемент управления items, вы имеете в виду, что я могу написать вместо него, например, listbox? и как я могу указать в этом элементе управления, что я хочу 4 элемента в каждой строке?

2. @Pavel: установите ширину элемента управления ItemsControl в 4 раза больше ширины отдельного элемента. Однако у вас действительно есть веская причина ограничиться 4?

3. мне также пишет, что тип «WrapPanel» не был найден, потому что schemas.microsoft.com/winfix/2006/xaml/presentation/toolkit — неизвестное пространство имен. что не так?

4. @pavel: Вы не установили инструментарий, а затем не обратились к системе. Windows. Элементы управления. Toolkit.dll ?

5. прежде всего, спасибо за все предыдущие ответы. У меня другая проблема, у меня есть только одна строка с большим количеством отключенных столбцов. в чем проблема?