2013-03-05 107 views
-2

如何将数字格式化为C#中的字符串?如何将数字更改为格式化的字符串

例如,我该如何取34549321这样的数字并将其显示为34,549k?

+2

我做了一个非常显著编辑试图您的文章,使之更加清晰。告诉我,如果我错了,我会恢复它 – 2013-03-05 22:45:18

+0

是的,这很好 – Dork 2013-03-05 22:45:58

+0

@Dork你可以提供一个XAML示例/代码隐藏/查看模型显示数据来自哪里以及你想如何用它?你可以提供的细节越多,答案就越好。 – 2013-03-05 22:55:32

回答

2

如果此值来自绑定,则引入一个Converter类,它接受一个数字并返回一个字符串。

转换教程:http://wpftutorial.net/ValueConverters.html

您也可以格式化结合,而不在绑定表达式中使用的StringFormat只是一个转换器,但比A转换器较为有限。见:

  1. http://msdn.microsoft.com/en-us/library/system.windows.data.bindingbase.stringformat.aspx - 添加的StringFormat的结合
  2. http://msdn.microsoft.com/en-us/library/0c899ak8.aspx - 格式允许串

可以在C#代码转换NUMERICS使用的String.Format( “”,...)格式化的字符串。

对于示例(假设太多数的长度):

int x = 34549321; 
string xs = string.Format("{0:#,##,k}",x); 
// Produces xs = 34,549k 
+0

看来我只需要一个'自定义数字格式字符串'代码,它不是专用于Xaml的。对不起,误导。 – Dork 2013-03-05 23:03:00

+0

@Dork非xaml示例添加 – 2013-03-05 23:10:55

+0

如何摆脱最后3位数字?我有一个工作应用程序,我只需要将'TextFormatting =“### E + 0”>'改成我需要的。 – Dork 2013-03-05 23:22:47

相关问题