如果值为null,我想显示另一个值并显示另一个labeltext。如何在不更改底层数据层的情况下在WPF / XAML中执行此操作?
// Some pseudo-code
if a != null
my label = a
my value = a
else
my label = b
my value = b
<TextBlock Grid.Column="7" Margin="0" Grid.Row="0" Grid.RowSpan="1" TextWrapping="Wrap" Text="my label"
HorizontalAlignment="Right" FontWeight="Normal" VerticalAlignment="Center" FontSize="13.333" />
<TextBlock Grid.Column="8" Margin="5,-0.002,0,0" Grid.Row="0" Grid.RowSpan="1" TextWrapping="Wrap" Text="my value"
HorizontalAlignment="Left" VerticalAlignment="Center" FontSize="13.333" FontWeight="Bold" />
答案 0 :(得分:2)
您需要使用binding converters
绑定转换器在绑定机制将其分配给控件/属性之前接收必须绑定的值。在该类的函数中,您可以在实际模型值(例如)和UI上显示的值之间进行转换/转换。主要是转换器用于在不同的类型之间进行转换:在模型上,您在ui上false
应该具有red
颜色。因此,您应该使用它成功地实现目标。