我有一个喜欢在视图(WPF)中显示的对象(相同类型)的集合。 这些对象是某种打印预览,因此每个对象都是可以纵向打印的页面(高度大于宽度)。
起初,我使用WPF TabControl
将每个预览页面放在单独的标签中。效果很好,每个页面都在选项卡中显示得尽可能大。但是由于TabControl
的构造(它只保留当前选定选项卡的视觉效果),因此在打印时我无法从TabControl
中获得所有对象的视觉效果。
所以我考虑过将它们放在水平StackPanel
中。但是我不知道如何使StackPanel
内部的对象尽可能大。看来StackPanel
显示的预览页面尽可能小,我希望它们尽可能大。
我试图将HorizontalAlignment
中控件的VerticalAlignment
和ItemTemplate
设置为Stretch
,但这没有帮助。
我试图将Height
中控件的ItemTemplate
绑定到ActualHeight
的{{1}}上,但这也无济于事(我什至无法解释它确实完成了这种绑定)。
我用google搜索,但我能想到的最好的方法就是编写自己的ItemsControl
。
这真的是可行的方法吗,还是有说服Panel
使其尽可能大的孩子的方法(至少在不堆叠的维度上)。