此xaml确实将图像填充了剩余的空间,但是文本位于图像的正下方,而不是按钮的最底部。也许我需要使用DockPanel以外的其他东西,但是我不确定该使用什么。如果有其他方法可以使文本起作用,则不必将其放在“标签”中。
谢谢
<Button Height="150" Width="150">
<DockPanel LastChildFill="True">
<Label HorizontalContentAlignment="Center" DockPanel.Dock="Bottom">foo</Label>
<Image Source="bar.png" />
</DockPanel>
</Button>
最佳答案
Button元素不会自动允许其内容填充整个Button区域。为此,您必须将HorizontalContentAlignment和VerticalContentAlignment属性都设置为“Stretch”。
<Button Height="150" Width="150"
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch">
<DockPanel LastChildFill="True">
<Label HorizontalContentAlignment="Center" DockPanel.Dock="Bottom">foo</Label>
<Image Source="bar.png" />
</DockPanel>
</Button>
关于wpf - WPF图像按钮,其文本 anchor 定在按钮底部,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10898934/