WPF:按钮模板中的图像下的文本

时间:2017-06-14 07:45:05

标签: c# wpf button visual-studio-2008 .net-3.5

我正在尝试使用stackpanel在按钮模板中的图像下放置文本,但它无法正常工作。只有图像可见,文字不可见。使用模板,我可以将图像作为背景填充所有按钮。见下文:

            <Button Name="btnAdd" Height="36" Width="36" Click="btnAdd_Click" HorizontalAlignment="Center" Margin="10">
                <Button.Template>
                    <ControlTemplate>     
                        <StackPanel Orientation="Vertical">
                           <Image Source="/MyPath/Add.png"/>                               
                           <Label Padding="0">My Button Text</Label>
                        </StackPanel>
                    </ControlTemplate>
                </Button.Template>                    
            </Button>

如何让我的标签在图像下方以小字体显示?

1 个答案:

答案 0 :(得分:2)

你有两个问题。您将Height的{​​{1}}和Width设置为36,但文本&#34;我的按钮文字&#34;比36更宽。如果Add.png高于36像素,你将没有任何空间用于显示文本。

这就是为什么我建议设置Button ImageWidth而不是Height ButtonWidth的原因。

要在图片下方的中心显示文字,您必须将Height的{​​{1}}属性设置为&#34;中心&#34;。

结果可能如下所示

HorizontalAlignment

以较短的形式

Label