У меня есть DataTemplate с двумя элементами. Я могу обновить значение текстового блока во время выполнения. Мне нужно обновить фон границы на основе значения из texblock. Например, мне нужно сделать фон границы красным, когда texblock получает значение «Нет», и изменить цвет на зеленый, где texblock получает значение строки «Да».
Я применил привязку TwoWay, но она только обновляет значение текстового блока без влияния на цвет фона границы. Любой совет высоко ценится!
Ниже XAML:
<UserControl.Resources>
<DataTemplate x:Key="DataTemplateYesNo">
<StackPanel Orientation="Horizontal">
<Border x:Name="BoxColor" Width="10" Height="10" VerticalAlignment="Center" Background="#FF00FF3E" Margin="0,0,5,0" >
<i:Interaction.Triggers>
<ic:DataTrigger Binding="{Binding Y}" Value="No">
<ic:ChangePropertyAction PropertyName="Background" Duration="0">
<ic:ChangePropertyAction.Value>
<SolidColorBrush Color="Red"/>
</ic:ChangePropertyAction.Value>
</ic:ChangePropertyAction>
</ic:DataTrigger>
</i:Interaction.Triggers>
</Border>
<TextBlock Text="{Binding Y, Mode=TwoWay}" VerticalAlignment="Center" />
</StackPanel>
</DataTemplate>
</UserControl.Resources>
<StackPanel Orientation="Horizontal">
<data:DataGrid x:Name="mdg" ItemsSource="{Binding Coordinates, Mode=TwoWay}"
AutoGenerateColumns="False">
<data:DataGrid.Columns>
<data:DataGridTextColumn Header="X Position" Width="100" Binding="{Binding X, Mode=TwoWay}"/>
<data:DataGridTemplateColumn Header="Y Position" Width="100" CellTemplate="{StaticResource DataTemplateYesNo}" />
</data:DataGrid.Columns>
</data:DataGrid>
</StackPanel>