假设我在一个窗口中有两个元素。
我希望元素A 来填充所有未使用的顶点空间,并且至少总是如此。 200px高度
元素B 将具有很少的固定大小(扩展器)并且应该给出它所需的空间(但是对于A保留至少200px)。如果窗口中没有足够的可用空间,则B应该是可滚动的。
这接近我想要达到的目标,但DockPanel不尊重MinHeight财产。
<DockPanel>
<ScrollViewer DockPanel.Dock="Bottom">
<B/>
</ScrollViewer>
<A MinHeight="200"/>
</DockPanel>
有没有办法使用WPF原生面板?
答案 0 :(得分:2)
DockPanel将始终按照定义的顺序处理面板;它不会因为最后一个元素具有MinHeight而使对接元素变小。
我会使用网格:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" MinHeight="200" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<A Grid.Row="0"/>
<ScrollViewer Grid.Row="1">
<B/>
</ScrollViewer>
</Grid>