在wpf中更改运行时按钮的内容

时间:2010-06-10 14:28:41

标签: wpf

我在wpf(实际上是silverlight)应用程序中有一个按钮。 我想在运行时更改此按钮的内容以向其添加图像(例如,如果内容是“按钮一”,我希望内容变为:包含image1 +原始按钮文本的stackpanel)。

请帮忙。

2 个答案:

答案 0 :(得分:2)

检查一下:

var sp = new StackPanel();
var img = new Image() {Source = ...}
sp.Children.Add(img);
sp.Children.Add("Hello world");
btn.Content = sp; // btn - is the name of your button.

答案 1 :(得分:1)

使用BooleanToVisibilityConverter隐藏并显示图像,而不是添加图像。 ShowImage是一个bool属性,您设置为true / false以显示/隐藏图像。

<Button>
    <StackPanel Orientation="Horizontal">
        <Image Visibility="{Binding Path=ShowImage, Converter={StaticResource BooleanToVisibilityConverter}}"/>
        <TextBlock Margin="5,0,0,0" Text="button one" />
    </StackPanel>
</Button>