我想创建堆叠成一行的4个矩形。
| ---- | - | ------ | ------------ |
每个矩形的宽度都绑定为%。
我决定将矩形分组到水平StackPanel。要计算我想要写入转换器的矩形的宽度。
我不知道如何创建必须绑定到的转换器: - 价值% 我想将父级的宽度传递给converter参数。
如何编写参数将其绑定到父级的宽度?
感谢您的回答。
答案 0 :(得分:2)
摆脱StackPanel并放置一行和一列的Grid,这样就可以了。您可以调整控件的大小,它将正常运行。波纹代码ColumnDefinition Width实际上是百分比值。例如,第一个矩形波纹管占总宽度的20%,因为ColumnDefinition在该列上设置了0.2 *。
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.1*"/>
<ColumnDefinition Width="0.25*"/>
<ColumnDefinition Width="0.45*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
</Grid.RowDefinitions>
<Rectangle Grid.Column="0" Fill="Black" Stroke="White" StrokeThickness="1"/>
<Rectangle Grid.Column="1" Fill="Black" Stroke="White" StrokeThickness="1"/>
<Rectangle Grid.Column="2" Fill="Black" Stroke="White" StrokeThickness="1"/>
<Rectangle Grid.Column="3" Fill="Black" Stroke="White" StrokeThickness="1"/>
</Grid>