-1
string Foo = selectedrow.Cells["Foo"].Value.ToString("D5"); 

给我的错误

No overload for method 'ToString' takes 1 arguments

所以我不得不使用

string Foo = selectedrow.Cells["Foo"].Value.ToString().PadLeft(5,'0');

谁能解释为什么?

4

2 回答 2

0

DataGridViewCell.Value是类型System.Object。该Object.ToString()方法不接受任何参数。因此,您不能提供格式说明符。

于 2013-04-19T21:42:04.610 回答
0

如果您事先知道 DataType,则需要先转换 Value,然后才能使用您正在寻找的 ToString 方法:

string dateTime = ((DateTime)(selectedrow.Cells["Today"].Value)).ToString("dd/MM/yyyy");
string number = ((decimal)(selectedrow.Cells["Price"].Value)).ToString("N2");
于 2013-04-21T13:58:12.610 回答