I'm just trying to learn DataTriggers. What's wrong with this simple code? It tells me that "Source" is not a property of FrameworkElement.
<Image>
<Image.Triggers>
<DataTrigger Binding="{Binding Status}" Value="Sent">
<Setter Property="Source" Value="Resources\Approve_64_Trans.bmp"/>
</DataTrigger>
<DataTrigger Binding="{Binding Status}" Value="SendFailed">
<Setter Property="Source" Value="Resources\Cancel_64_Trans.bmp"/>
</DataTrigger>
</Image.Triggers>
</Image>
Also, is it correct to use a value "SendFailed" or "Sent" when the Status field is of enum type and SendFailed and Sent are two valid enum values?
You need to put that kind of trigger in a style, like so:
<Image>
<Image.Style>
<Style TargetType="Image">
<Style.Triggers>
<DataTrigger Binding="{Binding Status}" Value="Sent">
<Setter Property="Source" Value="Resources\Approve_64_Trans.bmp"/>
</DataTrigger>
<DataTrigger Binding="{Binding Status}" Value="SendFailed">
<Setter Property="Source" Value="Resources\Cancel_64_Trans.bmp"/>
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>