我有带有ListBox的WPF窗口,其中包含TextBlock的项目。 每个TextBlock都有不同的字体大小和文本长度。 当我填写我的收藏集时,它会包含用于查看结果的滚动条。
适合ListBox的最佳方法是什么(适合缩放)以适应ListBox,它会在不滚动的情况下显示当前窗口中的所有项目?
(当ScrollViewer.HorizontalScrollBarVisibility ="已禁用"以及ScrollViewer.VerticalScrollBarVisibility ="已禁用")
是否有任何WPF方式或某种算法可以这样做?
答案 0 :(得分:0)
我之前遇到了与您类似的问题,并且只能使用ViewBox来解决它。
<ViewBox Stretch="Uniform">
<ListBox>...</ListBox>
</ViewBox>
如果需要,您还可以将给定控件的某个维度与另一个维度绑定,例如:
<ViewBox x:Name="vb" Stretch="Uniform">
<ListBox Width={Binding ActualWidth, ElementName=vb>...</ListBox>
</ViewBox>
但是由于每种容器类型的不同布局特征(如果它扩展或缩小,或者它是否告诉其子项扩展),您必须尝试不同的方法,直到布局按预期工作。