WPF从后面的代码更改按钮图像

时间:2013-12-03 20:44:23

标签: wpf button

我想检查哪个图像应用于按钮并在后面的代码中进行更改。

 <Button x:Name="btnFlashAlert" Content="Button" Canvas.Left="87" Canvas.Top="258" Background="{x:Null}" Margin="136,244,409,215" BorderBrush="{x:Null}" BorderThickness="0" Cursor="Hand" Click="btnFlashAlert_Click">
        <Button.Template>
            <ControlTemplate>
                <Image Source="Main/Images/FlashButton.png" Name="image"/>
            </ControlTemplate>
        </Button.Template>
    </Button>

我的目标是在满足特定值时使按钮闪烁不同的颜色按钮图像而不是颜色,以通知用户他们有某些类型的消息等待

1 个答案:

答案 0 :(得分:3)

您可以将Source属性绑定到Button的Content

<Button x:Name="btnFlashAlert">
    <Button.Template>
        <ControlTemplate TargetType="Button">
            <Image Source="{TemplateBinding Content}"/>
        </ControlTemplate>
    </Button.Template>
    <Button.Content>
        <BitmapImage UriSource="Main/Images/FlashButton.png"/>
    </Button.Content>
</Button>

您现在可以在代码中将内容设置为任何其他ImageSource:

btnFlashAlert.Content = new BitmapImage(new Uri(...));