【发布时间】:2012-09-29 14:35:31
【问题描述】:
是否可以在 XAML 定义中相对于另一个控件定位控件?
例如,如果我想将一个控件恰好放在另一个更宽的控件的中间。
如果是这样 - 如何?
【问题讨论】:
-
对于初学者,您是否尝试过使用 HorizontalAlignment="Center" 作为内部控件?
-
使控件居中只是一个例子。我正在寻找更通用的东西:)
标签: wpf
是否可以在 XAML 定义中相对于另一个控件定位控件?
例如,如果我想将一个控件恰好放在另一个更宽的控件的中间。
如果是这样 - 如何?
【问题讨论】:
标签: wpf
如果您想使控件居中,您可以将它们包装在一个网格中:
<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>
【讨论】: