更改按钮背景
问题描述:
几经尝试更改按钮的背景,并获得铸件的错误,像我finnaly走到这一步的事情:更改按钮背景
Uri dir = new Uri("red_flag.png",UriKind.RelativeOrAbsolute);
ImageSource source = new System.Windows.Media.Imaging.BitmapImage(dir);
ImageBrush bru = new ImageBrush();
bru.ImageSource=source;
bru.Opacity = 100;
此代码不会产生错误,但我可以我看到变化时,我打电话:
button1.background = bru;
它只是做任何事情! :(
答
发现阅读米克的答案后,答案myelf,我与你分享我所做的:
Uri dir = new Uri("red_flag.png", UriKind.Relative);
ImageSource source = new System.Windows.Media.Imaging.BitmapImage(dir);
Image image = new Image();
image.Source = source;
StackPanel stack = new StackPanel();
stack.Children.Add(image);
myButton.Content = stack;
感谢您的帮助
更新1: 为了获得最佳效果,请将按钮的填充属性设置为0(在每种情况下),以便图像可以自动调整大小以填充所有按钮,请注意,这可能会隐藏您的实际内容,这是我想要的情况。
答
如果这个代码是相同的按钮,您将有这个问题的单击事件处理程序的一部分。
彼得托解释了为什么在这里,并提供解决方案。
Why can't I change the Background of my Button on a Click event?
但是这需要我声明buttonson XAML x_X,我的程序的性质要求我以编程方式创建按钮 – 2010-11-29 02:27:32
如何创建基于Blend生成的xaml的样式,然后以编程方式分配它 - http://forums.silverlight.net/forums/p/13115/42706.aspx – 2010-11-29 08:02:42