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

MAUI中Label使用StringFormat时能否内联修改FontAttribute?

问题:MAUI Label绑定StringFormat后能否修改部分文本的字体属性?

直接使用StringFormat绑定文本的方式无法实现部分文本的字体属性修改,因为StringFormat仅负责文本内容的拼接格式化,不支持单独设置某段文本的样式。要实现你想要的效果,可以改用MAUI Label的FormattedText属性,通过Span元素分别定义不同文本段的样式。

实现方法示例

效果一:将"Time start:"设为加粗

<Label Style="{StaticResource MediumLabel}">
    <Label.FormattedText>
        <FormattedString>
            <Span Text="Time start:" FontWeight="Bold" />
            <Span Text=" " />
            <Span Text="{Binding TimeStart, StringFormat='{0:F0}'}" />
        </FormattedString>
    </Label.FormattedText>
</Label>

效果二:将时间部分设为斜体

<Label Style="{StaticResource MediumLabel}">
    <Label.FormattedText>
        <FormattedString>
            <Span Text="Time start:" />
            <Span Text=" " />
            <Span Text="{Binding TimeStart, StringFormat='{0:F0}'}" FontStyle="Italic" />
        </FormattedString>
    </Label.FormattedText>
</Label>

说明

FormattedText配合Span可以灵活控制不同文本段的字体粗细、样式、颜色、字号等属性,完全满足你对部分文本修改字体属性的需求。如果有更复杂的动态样式需求,也可以在后台代码中构建FormattedString对象并赋值给Label的FormattedText属性。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 00:28:14