当值为null时,如何在xaml中为绑定属性创建自定义函数

本文关键字:xaml 绑定 创建 自定义函数 属性 null | 更新日期: 2023-09-27 18:27:42

如果一个值为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" />

当值为null时,如何在xaml中为绑定属性创建自定义函数

您需要使用绑定转换器

绑定覆盖器接收在绑定机制将其分配给控件/属性之前必须绑定的值。在该类的函数中,您可以在实际模型值(例如)和UI上显示的值之间进行转换/转换。转换器主要用于不同类型之间的转换:在ui上有false的型号上,应该有red颜色。所以你应该用它成功地实现你的目标。