我需要根据一个对象的值有条件地更改 TextBlock 绑定,该对象是我的 ViewModel 中 OC 中的众多对象之一。我确定我需要使用 DataTriggers 来完成此操作。具体来说,我想动态更改下面第一个 TexBlock 为其 Text 属性绑定的属性。OC 摘要包含一组名称对象,每个对象都有一个名为 NameType 的属性。如果 NameType = 1 我想绑定到 Name1,NameType=2 绑定到 Name2 等。第二个 TextBlock 很好,因为它显示了关联的值。
<ItemsControl Grid.Row="1" ItemsSource="{Binding Summary}" Margin="0,3,0,0">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<TextBlock Style="{StaticResource TooltipLeftColumnTextStyle}" Text="{Binding Name}" />
<TextBlock Style="{StaticResource TooltipRightColumnTextStyle}" Text="{Binding Value}" />
<Border Grid.Row="1" Style="{StaticResource TooltipSeparatorBorder}" />
<Border Grid.Row="2" Style="{StaticResource TooltipSeparatorAlternateBorder}" />
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>