我有一个网格,下面有一个StackPanel。我已经将行的高度定义为最后一行为“*”,并且在最后一行中,StackPanel和所有控件都将存在。
所以我在我的StackPanel的XAML中有以下代码
<StackPanel Grid.Row="1" MaxHeight="333">
<StackPanel MaxHeight="333">
<ScrollViewer MaxHeight="333">
<TextBlock x:Name="lblRouteDetail" FontSize="35" TextWrapping="Wrap"/>
</ScrollViewer>
</StackPanel>
</StackPanel>
嗯,它有效,只是我必须约束MaxHeight是333,没有它,它将无法工作; ScrollViewer不起作用,TextBlock中的内容将无法滚动。
你能说出我的问题在哪里,以及如何解决这个问题?
答案 0 :(得分:1)
StackPanel
,除非设置为特定高度(如果其方向设置为Horizontal
,则为宽度),不会限制其子项的高度,而是根据它们调整大小。如果您想要滚动控件,可以保留MaxHeight
属性或使用其他面板来保留它们,例如Grid
或DockPanel
。