WPFのImageのSourceがNullの場合の対策
はじめに
WPFを使っていて、xamlで以下のようなコーディングをした際のことです
<Image Source="{Binding ImageFilePath}"
Width="100"
Height="100"/>
.NetFramework4.8のときは、このImageFilePathがnullや空文字でもすぐに表示されたのですが、.NET5に変更した際に、エラーが起きて、表示がとても遅くなってしまいました。
エラーの内はこんな感じですね
例外がスローされました: 'System.NotSupportedException' (System.ComponentModel.TypeConverter.dll の中)
例外がスローされました: 'System.NotSupportedException' (PresentationCore.dll の中)
System.Windows.Data Error: 23 : Cannot convert '' from type '' to type 'System.Windows.Media.ImageSource'
対策
対策といえばググりましょうということで、いろいろと調べましたが、UWPのImageのSourceにnullや空文字をx:Bindしたときの対処方法(対処できない)という記事で、TargetNullValueを設定すればよさそうということがわかりました。
さらに調べて、TargetNullValue={x:Null} とすることで対策できました。
<Image Source="{Binding ImageFilePath, TargetNullValue={x:Null}}"
Width="100"
Height="100"/>
以上、できてしまえば簡単ですが、忘れてしまいそうだったので、備忘録もかねて記事とさせていただきました。
Author And Source
この問題について(WPFのImageのSourceがNullの場合の対策), 我々は、より多くの情報をここで見つけました https://qiita.com/mkuwan/items/531c38aab4ccde74fd8f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .