C 转换网格布局

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

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

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

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

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

这方面的好方法是什么

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


任何建议都会很棒。谢谢

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

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

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


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

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