我有一个带有按钮的 WPF 窗口。我希望按钮根据其文本增加或减少宽度。我怎样才能做到这一点?
问问题
105 次
2 回答
3
只需将Width
属性设置为Auto
并给出一个 HorizontalAlignment ( Center
,Right
或Left
),因为它的默认值为Stretch
,这会导致填充其容器。
这是一个关于它如何工作的例子:
代码
<Window x:Class="StackOverflow.WPF.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<Button Content="A Default Button"/>
<Button Content="An Auto Width Button"
Width="Auto"
HorizontalAlignment="Center"
Grid.Column="1"/>
<Button Content="An Auto Width and Height Button"
Width="Auto" Height="Auto"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Grid.Column="0" Grid.Row="1"/>
</Grid>
</Window>
输出
于 2013-03-27T13:06:00.910 回答
2
如果你没有为你的按钮设置一个固定的宽度,它已经将它的宽度适应它的内容。
于 2013-03-27T13:09:46.740 回答