You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用BoolToObjectConverter设置BackgroundColor属性失效问题咨询

问题原因与解决办法

核心问题

你设置的BoolToObjectConverter返回的是字符串类型(比如"Colors.Red"),但BackgroundColor属性需要的是Color类型的对象,字符串无法被识别为有效颜色,所以只能显示默认白色;而Text属性本身接受字符串,所以能正常显示"Colors.Red"文本。

解决方法

修改资源字典中的转换器定义,用{x:Static}标记扩展直接引用Colors类的静态颜色属性,这样转换器返回的就是Color类型对象,能被BackgroundColor正确识别:

<ResourceDictionary>
    <toolkit:BoolToObjectConverter x:Key="BoolToColorConverter" 
                                   TrueObject="{x:Static Colors.Red}" 
                                   FalseObject="{x:Static Colors.Blue}"/>
</ResourceDictionary>

额外提示

你的Text绑定逻辑有误,当前会把颜色文本显示在Chip上,应该改成你实际需要展示的文本内容,比如:

<syncfusion:SfChip Text="首页" 
                   BackgroundColor="{Binding IsCurrentPage, Converter={StaticResource BoolToColorConverter}}" 
                   TextColor="Black"/>

内容的提问来源于stack exchange,提问作者Frank Mehlhop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 08:42:10