I have an Image element in XAML. I bind the Source property to a string property in my ViewModel. However, sometimes the value is null and then I get errors in the debug window.
I read here: ImageSourceConverter error for Source=null that I could make a converter to return DependencyProperty.UnsetValue if the value is null.
Now I'm wondering if it is possible to do it directly in XAML? Perhaps by using a FallbackValue? I have tried some variants but with no luck.
This is my Image element in XAML:
<Image Name="img" Source="{Binding Path=CurrentImageSource}" Stretch="None" />
And CurrentImageSource is just a string property on the DataContext.
The error message is: System.Windows.Data Error: 23 :
Cannot convert '' from type '' to type 'System.Windows.Media.ImageSource' for 'sv-SE' culture with default conversions; consider using Converter property of Binding. NotSupportedException:'System.NotSupportedException: ImageSourceConverter cannot convert from (null).
I used x:Null with TargetNullValue, that way you get an easy blank image...
<Image Source="{Binding LogoPath, TargetNullValue={x:Null}}" />
That way you don't need to mess around with Triggers or BitmapImages as static resources.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With