如何更新按钮上的图像单击命令

时间:2011-12-16 15:16:10

标签: c#-4.0 silverlight-4.0 mvvm prism-4

View有一个按钮和Image控件。我已将按钮命令绑定到ViewModel上的delegateCommand,它打开一个文件对话框供用户选择一个Image.View的上下文“对象”包含一个属性“Icon”这是byte []的类型。我已经将Icon绑定到Image控件。问题是如何在图像控件上显示所选的图像文件?。

Xaml:

<Button  x:Name="dlgIconbtn" Command="{Binding OpenFileCommand}" Content="Choose Icon" MaxWidth="120" Grid.Row="3" Grid.Column="1" Margin="5"/>
        <Image Grid.Row="3" Margin="5" Grid.Column="3" Source="{Binding AppItem.Icon,Converter={StaticResource imgConverter}}"
               Width="25" Height="25"/>

2 个答案:

答案 0 :(得分:0)

我认为您的转换器工作正常。 现在,当OpenFileCommand触发用户选择图片并使用新App.Icon更新Byte[]属性时。 现在请RaiseProperty更改Icon上的事件,以便Binding得到刷新。

我认为您不需要任何代码。

如果仍然无法正常工作,请使用完整代码XAML + ViewModel

更新您的问题

答案 1 :(得分:0)

我使用viewModel中的属性“ImgSource”解决了它,它绑定到ImageControl的源。每当用户使用button命令选择图像时,我将图像文件内容设置为“ImgSource”并且它可以工作。