XAML 格式化Xamarin Binding表达式中的文本

cqoc49vn  于 2023-04-09  发布在  其他
关注(0)|答案(2)|浏览(141)

我可能没有在主题标题中充分解释,但我实际上想做的是:

<Label Text="Order Remaining :" Grid.Row="2" Grid.Column="0"></Label>
<Label Text="{Binding RemainingAmount}" Grid.Row="2" Grid.Column="1"></Label>

我希望在上面提到的代码中看到的是:
剩余订单:120金额
正如你在这里看到的,我不能添加单词“amount”,我可以在不创建另一个标签的情况下做类似{Binding RemaininAmount + 'Amount'}的事情吗?

kulphzqa

kulphzqa1#

也许像这样,添加网格。行和列标签

<Label>
    <Label.FormattedText>
        <FormattedString>
 <Span Text="Order Remaining :"/>
            <Span Text=" "/>
            <Span Text="{Binding RemainingAmount}"/>
            <Span Text=" "/>
            <Span Text="amount"/>
        </FormattedString>
    </Label.FormattedText>
</Label>

https://learn.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/data-binding/multibinding?WT.mc_id=DOP-MVP-5002948#format-strings

yk9xbfzb

yk9xbfzb2#

你可以在绑定表达式中使用StringFormat,如下所示:

<Label Text="Order Remaining :" Grid.Row="2" Grid.Column="0" />
<Label Text="{Binding RemainingAmount, StringFormat='{0:d} amount'}" Grid.Row="2" Grid.Column="1" />

{0:d}意味着你正在格式化一个字符串,其中第一个 (也是唯一一个) 参数应该显示为十进制。

相关问题