使用C#为每三位数字添加逗号

我想使用c#将逗号添加到每3位数的十进制数字。
我写了这段代码:

double a = 0; a = 1.5; Interaction.MsgBox(string.Format("{0:#,###0}", a)); 

但它返回2。
我哪里错了?
请描述我该如何解决?

  double a = 1.5; Interaction.MsgBox(string.Format("{0:#,###0.#}", a)); 

这是怎么做的:

  string.Format("{0:0,0.0}", a) 

它做得对。 #,## 0表示写入至少一个数字和零小数位数以及带有逗号的空格数字组。 因此,由于无法写入小数,因此它会舍入1.5到2。 请尝试#,## 0.00。 你会得到1.50

请尝试以下格式:

 string.Format("{0:#,0.0}", a) 

有一个标准格式字符串 ,将分隔千个单位: N

 float value = 1234.512; value.ToString("N"); // 1,234.512 String.Format("N2", value); // 1,234.51 

你有没有尝试过: –

 string.Format("{0:0,000.0}", 1.5);