2010-04-23 116 views
81

我试图在WPF中的按钮上附加图像,但是此代码失败。似乎很奇怪,类似的代码在Mozilla XUL中可以很好地工作。带图像的WPF按钮

<Button Height="49.086" Margin="3.636,12,231.795,0" Name="button2" 
     VerticalAlignment="Top" Grid.Column="1" Click="button2_Click" 
     Source="Pictures/apple.jpg">Disconnect from Server</Button> 

回答

188

你想要做这样的事情,而不是:

<Button> 
    <StackPanel> 
     <Image Source="Pictures/apple.jpg" /> 
     <TextBlock>Disconnect from Server</TextBlock> 
    </StackPanel> 
</Button> 
+2

不要忘记将apple.jpg添加到项目中。 (构建操作:资源) – watbywbarif 2015-11-02 13:15:05

+2

这是一个非常糟糕的解决方案,因为在禁用按钮时,文本和图像不会被_gray out_。 – 2017-05-24 09:22:23

9

另一种方式来拉伸图像到全按钮。可以尝试下面的代码。

<Grid.Resources> 
    <ImageBrush x:Key="AddButtonImageBrush" ImageSource="/Demoapp;component/Resources/AddButton.png" Stretch="UniformToFill"/> 
</Grid.Resources> 

<Button Content="Load Inventory 1" Background="{StaticResource AddButtonImageBrush}"/> 

Here

简称此外,它可能帮助其他。我发布了MouseOver Option here