如何在列表项上使用字符串格式

时间:2015-02-24 09:06:10

标签: c# list string-formatting drawstring

我使用抽绳来获取要显示的列表中的项目,但现在我希望它显示为4位数字而不是单个数字。

因此,我希望它显示0而不显示0.000。如果有人能帮助我,那就太好了。

这是使用的列表类型。

List<string> ListVrd = new List<string>();

用于填写列表的代码。

c = drART["MVRD"].ToString();
ListVrd.Add(c);

用于打印项目的代码行。

row = ListVrd[itemsPrinted];
e.Graphics.DrawString(row, DefaultFont, Brushes.Black, distance, currentY);//print item

3 个答案:

答案 0 :(得分:1)

我认为来自drART的内容是一个数字,在这种情况下你可以在那里格式化:

c = ((float)drART["MVRD"]).ToString("0.000");
ListVrd.Add(c);

请注意,上述内容假定来自drART["MVRD"]的数字为float。检查实际的类型 - 可能是intdecimallong等。

请参阅Standard formatting stringsCustom formatting strings

答案 1 :(得分:0)

尝试使用这里建议的一些东西和一些格式占位符的msdn列表使其工作后,我设法得到我想要的。

这是我现在使用的代码。

c = drART["MVRD"].ToString();
c2 = (String.Format("{0:###,###0,000} ", Convert.ToInt32(c), cult));
ListVrd.Add(c2);

答案 2 :(得分:-2)

您需要将string转换为数字类型,然后将其转换回所需格式的string,例如

formattedString = Convert.ToDouble(unformattedString).ToString("n3");

您实际进行的转换取决于您,即在将项目添加到列表或将其取出之前。我不得不怀疑,如果数据代表一个数字,那么为什么它首先存储为string