5

是否可以在 XAML 定义中相对于另一个控件定位控件?
例如,如果我想将一个控件恰好放在另一个更宽的控件的中间。
如果是这样 - 如何?

4

1 回答 1

7

如果要使控件居中,可以将它们包装在网格中:

<Grid>
    <TextBox Height="132"   Width="229" VerticalAlignment="Center" HorizontalAlignment="Center" />
    <Button Content="Button" Height="23" Width="75" VerticalAlignment="Center" HorizontalAlignment="Center" />
</Grid>

其他定位可以通过 StackPanel 等其他面板来完成。网格是最灵活的选择。

编辑:用网格和列更新以控制位置:

<Grid Height="50" Width="200">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="50*" />
        <ColumnDefinition Width="20*" />
        <ColumnDefinition Width="75*" />
    </Grid.ColumnDefinitions>
    <TextBox Grid.Column="0" Background="Red" />
    <Button Content="Button"  Grid.Column="2"   />
</Grid>
于 2012-09-29T14:54:43.513 回答