Vous devez mettre l'image dans un bouton, et lier le bouton à la commande:
<Button Command="{Binding MyCommand}">
<Image Source="myImage.png" />
</Button>
Si vous ne voulez pas que le bouton standard chrome, il suffit de changer le modèle du bouton avec quelque chose comme que:
<ControlTemplate x:Key="tplFlatButton" TargetType="{x:Type Button}">
<Border Width="{TemplateBinding Width}"
Height="{TemplateBinding Height}"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
TextElement.Foreground="{TemplateBinding Foreground}"
TextElement.FontFamily="{TemplateBinding FontFamily}"
TextElement.FontSize="{TemplateBinding FontSize}"
TextElement.FontStretch="{TemplateBinding FontStretch}"
TextElement.FontWeight="{TemplateBinding FontWeight}"/>
</Border>
</ControlTemplate>
Notez que vous devrez également modifier d'autres propriétés pour remplacer le style de bouton par défaut, sinon le modèle ci-dessus va utiliser l'arrière-plan par défaut du bouton et de la frontière:
<Style x:Key="stlFlatButton" TargetType="{x:Type Button}">
<Setter Property="Background" Value="{x:Null}" />
<Setter Property="BorderBrush" Value="{x:Null}" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Template" Value="{StaticResource tplFlatButton}" />
</Style>
Vous ne savez pas ce que vous entendez par là? Que voulez-vous que l'image fasse si elle est liée? –