WPF WrapPanel - 所有项目应具有相同的宽度

18

我有一个ListBox,我已经用WrapPanel替换了它的ItemsPanel。现在WrapPanel承载着数据绑定的ListBoxItems,每个项目中都有一个大小不同的文本,因此每个项目都具有不同的宽度。然而,我希望宽度是恒定的,从而使所有项目都具有与具有最长文本的项目相同的宽度。这个是否可能实现?

1个回答

20

将每个项目放置在单行单列(自动宽度)的网格中,并命名该列。在ListBox上设置Grid.IsSharedSizeScope,所有网格将具有相同的宽度。


1
有了这个,我可以最终实现将我的GUI从(水平)StackPanel放在一个具有可变大小项目的ScrollViewer中,改为使用所有项目共享相同尺寸的WrapPanel。真的很棒。 - Christoffer Lette
效果非常棒...即使感觉有点像黑客技术,也比为这个垃圾制作一个新的自定义控件好...呵呵 - Assimilater
2
这里有一个如何做的指南。 - mcalex

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接