1

DataTriggersを学習しようとしています。この単純なコードの何が問題になっていますか?「ソース」は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>

また、Statusフィールドが列挙型でSendFailedとSentが2つの有効な列挙値である場合、値「SendFailed」または「Sent」を使用するのは正しいですか?

4

1 に答える 1

2

そのようなトリガーを次のようなスタイルで配置する必要があります。

  <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>
于 2013-01-10T17:50:12.133 に答える