C 转换网格布局

C 转换网格布局,c,wpf,xaml,C,Wpf,Xaml,我对WPF有些陌生,所以请原谅我,如果这是小事 我有一个面板,如下图所示: 它只是组成dockPanel左侧的面板的表示。它有一列和三行——一行是标题,一行是图像(汽车只是一个占位符,而不是实际的图像),一行是该特定项目的相应统计信息。 实际上,每一块之间都有一点空间,但我的绘画技巧并不专业 无论如何,我想把这个面板转换成我的dockpanel底部的水平面。但是,我希望每行中的最大项目数为5,如下图所示: 这方面的好方法是什么 我应该在代码隐藏中这样做(即,当我循环每个项目类型时,如果到目前

我对WPF有些陌生,所以请原谅我,如果这是小事

我有一个面板,如下图所示:

它只是组成dockPanel左侧的面板的表示。它有一列和三行——一行是标题,一行是图像(汽车只是一个占位符,而不是实际的图像),一行是该特定项目的相应统计信息。 实际上,每一块之间都有一点空间,但我的绘画技巧并不专业

无论如何,我想把这个面板转换成我的dockpanel底部的水平面。但是,我希望每行中的最大项目数为5,如下图所示:

这方面的好方法是什么

我应该在代码隐藏中这样做(即,当我循环每个项目类型时,如果到目前为止类型的计数可以被5整除,则创建一个新行,并确保每个新行与上面的一行对齐),还是有办法在XAML中这样做


任何建议都会很棒。谢谢

我建议您使用控件。从链接页面:

提供一种在网格中排列内容的方法,其中网格中的所有单元格大小相同

此外,它还有一个
Columns
属性,可用于设置网格中的列数



您可以从MSDN上的页面上找到更多关于WPF中使用的各种
面板的信息。

我应该在code behind中这样做吗
-当然不是。在WPF中,除了涉及许多故事板之类的复杂(非常复杂)的动画之外,代码隐藏什么都不做?如果你只是想在它超过可用大小时将其包装,然后将它们放在一个内。好吧,有趣的是,我正在使用故事板动画-但只是为了使统计数据增加动画。吉姆,规格是5。不是我的决定^_^
<ListBox ItemsSource="{Binding Items}">
    <ListBox.ItemsPanel>
        <ItemsPanelTemplate>
            <UniformGrid Columns="5" />
        </ItemsPanelTemplate>
    </ListBox.ItemsPanel>
</ListBox>