我在点击事件发生时尝试更改图像源。我可以在XAML中更改图像,但不能从代码中更改。我尝试从Button获取Image属性,但这不起作用。
我正在使用Caliburn进行事件调用:
<Button Content="Mark1" Height="30" Width="40"
cal:Message.Attach="[Event Click] = [Action SayHello($source, $this)]">
<Image Name="Mark1ButtonImage" Source="image1.png" />
</Button>
在C#代码中:
public void SayHello(object sender, object doodlesource)
{
var selectedButton = sender as Button;
var selectedKrav = doodlesource as Doodle;
if (selectedButton != null)
{
///WHAT TO DO TO CHANGE? selectedButton.Image doesn't work?
}
}
答案 0 :(得分:2)
试试这个。
Image img = new Image();
img.Source = new BitmapImage(new Uri(@"foo.png"));
SelectedBtn.Content=img
答案 1 :(得分:0)
要查找图像在按钮内,您需要使用以下代码行:
var image = (sender as Button).FindVisualChildren<Image>();
然后您可以更改图像的来源。