如何在XAML WPF中将十进制转换为字符串格式

本文关键字:转换 十进制 字符串 格式 XAML WPF | 更新日期: 2023-09-27 18:18:57

如何在XAML WPF中将十进制值转换为字符串格式(货币)?

<StackPanel Orientation="Horizontal">
    <TextBlock FontSize="10" Margin="12,2,0,2" Text="$ " />
    <TextBlock FontSize="10" Margin="12,2,0,2" Text="{Binding p_Price}"/> 
 </StackPanel>

//Text="{Binding p_Price, ConverterParameter='0,0.00'}"不起作用

如何在XAML WPF中将十进制转换为字符串格式

您不需要两个TextBlocks,使用StringFormat来获得货币

<StackPanel Orientation="Horizontal">
    <TextBlock FontSize="10" Margin="12,2,0,2" Text="{Binding p_Price, StringFormat=C}"/> 
 </StackPanel>

另外,你的p_Price属性不应该是string类型的

正如Nit建议的那样,您可以使用货币格式(Cc)获得您想要的内容。

我建议你看看这个MSDN页面,里面有所有关于你可以用它做什么的参考。

您可以在c后面指定一个数字,用于小数点后的位数,并传递该区域:

123.456 ("C", en-US) -> $123.46

123.456 ("C", fr-FR) -> 123,46€

123.456 ("C", ja-JP) ->¥123

-123.456 ("C3", en-US) -> ($123.456)

-123.456 ("C3", fr-FR) -> -123,456€

-123.456 ("C3", ja-JP) -> -¥123.456

根据您的需要,N也可能有用。