表格中每条记录的一个堆栈面板

Pri*_*esh 1 .net c# wpf mvvm

对于每一个记录在(姓名,年龄,市,电子邮件).

我需要一个stack panel(见下图stack-panel中天蓝色).

并加入该名单stack paneldock panel(见下面的图片dock-panel浅灰色的颜色).

怎么可能在WPF中实现?

是否user control能帮助我吗?

然后,我怎么能添加用户控件dockpanel 尽可能多的记录表congaing

是否有其他更好的标准的方式

我需要使用MVVM,所以考虑到这一点给出你的答案.....

在此输入图像描述 谢谢……

Tho*_*que 5

您可以使用ItemsControla UniformGrid作为ItemsPanel

<ItemsControl ItemsSource="{Binding Records}">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <UniformGrid IsItemsHost="True" Columns="2" />
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <ItemsControl.ItemTemplate>
        <StackPanel>
            ...
        </StackPanel>
    </ItemsControl.ItemTemplate>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我不认为a StackPanel是项目模板的最佳选择...通常你会使用a 来做Grid这种事情.当然,你可以创建一个UserControl包装它Grid并在其中使用它ItemTemplate