在XAML中用Style的Trigger Set Image.Source屬性,有時會發生無法辨識圖檔格式的問題(死當)

  • 423
  • 0
  • 2015-03-20

摘要:用style的Trigger,若用在圖,可能會發生無法辨識圖格式的問題(死當)

近來公司的程式發生怪事,第一次開沒有問題,關掉後第二次再開,取資料就死當!發生下列錯誤訊息:

The image format is unrecognized.

WPF的XAML出錯時,只說什麼錯誤,沒指出錯在哪裡。還好這次錯誤訊息可以看出跟圖有關。但是為何第一次可以,關掉後第二次就不行呢? 我用的是 Style.Trigger, 去 Set Image.Source 屬性:


<Style TargetType="Image" x:Key="OpnImgStyle">
<Style.Triggers>
    <DataTrigger Binding="{Binding Value}" Value="1">
        <Setter Property="Source" Value="/MYDLL;component/Images/Exclamation.png"/>
    </DataTrigger>
</Style.Triggers>
</Style>

我不知道WPF黑盒子裡到底發生什麼事。既然看不到,那就全部改用 Converter 吧! 至少我看的到它取圖怎麼取的,改完之後程式也不再發生這問題了。