在网格中排列集合项

时间:2010-09-26 16:32:18

标签: wpf collections grid dependency-properties

我想在具有特定列数和行数(例如4x6)的网格中排列集合的项目。每个项都公开依赖项属性(整数)X和Y,并且应该放在网格的相关单元格中。请注意,集合可以在运行时更改,这应该更新网格项。

我找不到任何好的解决方案。但也许甚至可以不使用代码隐藏?

不介意转换或其他什么。无论如何这个东西都会改变使用过的集合类并不重要。 (你可以选择一个。)

我该如何解决这个问题? 我们欢迎任何适当的建议,谢谢。

1 个答案:

答案 0 :(得分:6)

<ItemsControl ItemsSource="{Binding YourItems}">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <Grid/>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <ItemsControl.ItemContainerStyle>
        <Style>
            <Setter Property="Grid.Column" Value="{Binding X}"/>
            <Setter Property="Grid.Row" Value="{Binding Y}"/>
        </Style>
    </ItemsControl.ItemContainerStyle>
</ItemsControl>