WPF には、特定の型の組み込みコンバーターがあります。画像のSource
プロパティをstring
またはUri
値にバインドすると、内部で WPF はImageSourceConverterを使用して値をImageSource
.
そう
<Image Source="{Binding ImageSource}"/>
ImageSource プロパティが画像への有効な URI の文字列表現である場合に機能します。
もちろん、独自の Binding コンバーターをロールすることもできます。
public class ImageConverter : IValueConverter
{
public object Convert(
object value, Type targetType, object parameter, CultureInfo culture)
{
return new BitmapImage(new Uri(value.ToString()));
}
public object ConvertBack(
object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotSupportedException();
}
}
次のように使用します。
<Image Source="{Binding ImageSource, Converter={StaticResource ImageConverter}}"/>