一部のデータを TextBlock にバインドしようとしています。TextBlock はスライダー バーの値を表示するためのもので、スライダー バーの値が変更されたときに、TextBlock のテキストの色を赤に変更したいと考えています。
私のXAMLは次のようなものです:
<Grid Height="227">
<TextBlock Margin="114,60,112,150" Name="textBlock1" Text="{Binding Path=DispVal}" Width="42" Grid.Column="1" HorizontalAlignment="Center" TextAlignment="Center" FontWeight="Bold">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="Black"/>
<Style.Triggers>
<DataTrigger Binding="{Binding Path=IsChanged}" Value="true">
<Setter Property="TextBlock.Foreground" Value="Red" />
</DataTrigger>
<DataTrigger Binding="{Binding Path=IsChanged}" Value="false">
<Setter Property="TextBlock.Foreground" Value="Black" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
</Grid>
DataContext を使用して TextBlock をバインドしました。
texBlock1.DataContext = m_slider;
スライダー バーの更新ハンドラーが起動すると、m_slider オブジェクトを更新します。
ただし、テキストや色の変更はありません。