在限制孩子内容方面,我似乎永远无法理解DockPanel,StackPanel和Grid之间的差异。这个XAML:
<DockPanel>
<Menu/>
<ToolBarTray/>
<ScrollViewer>
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TabControl>
<TabItem Header="Data" Name="tabData">
<DockPanel>
<Border Name="extraDataBorder" DockPanel.Dock="Top"
Style="{StaticResource ConsistentBorder}" Margin="10">
</Border>
<igDP:XamDataGrid Grid.Row="1"
Margin="10,10,10,0"
ScrollViewer.HorizontalScrollBarVisibility="Visible"
ScrollViewer.VerticalScrollBarVisibility="Visible" >
</igDP:XamDataGrid>
</DockPanel>
</TabItem>
</TabControl>
</Grid>
</ScrollViewer>
</DockPanel>
生成一个不受屏幕可见区域限制的网格,如下图所示:
我不希望网格超出屏幕的可见区域。相反,我希望它被剪裁,以便用户可以看到水平滚动条而不必向下滚动以查看水平滚动条。我尝试使用Stack和DockPanel代替网格,但获得完全相同的效果。我该如何解决这个问题?
TIA。
修改 我正在编辑原始XAML以包含导致此问题的其他元素。
答案 0 :(得分:1)
您可以将其绑定到其父级的宽度和高度,作为众多解决方案之一。