我有一个包含一列的表格布局。顶部有一个画布,然后是分割器,然后是数据网格。我想将画布(在Viewbox中)约束到上部网格区域。如何防止画布只是在任何地方渲染,而只是在" upper"格?
<Grid VerticalAlignment="Stretch">
<Grid.RowDefinitions>
<RowDefinition Height="5*"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="2*"/>
</Grid.RowDefinitions>
<Viewbox Stretch="Uniform"><Canvas x:Name="canvas" /></Viewvox>
<GridSplitter Grid.Column="0" Grid.Row="1" Height="5" ResizeDirection="Rows" VerticalAlignment="Center" HorizontalAlignment="Stretch"/>
<DataGrid x:Name="dataGrid" />
</Grid>
答案 0 :(得分:0)
Canvases
必须始终与宽度/高度一起使用。您希望ViewBox
缩放画布,但不知道画布有多大。ClipToBounds
设置为true
。Shape
类都可以放在任何Panel上。