【问题标题】:Why can't I use format specifier on DataGrid Value?为什么我不能在 DataGrid 值上使用格式说明符?
【发布时间】:2013-04-19 21:22:25
【问题描述】:
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');

谁能解释一下原因?

【问题讨论】:

    标签: c# winforms datagridview tostring


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      string dateTime = ((DateTime)(selectedrow.Cells["Today"].Value)).ToString("dd/MM/yyyy");
      string number = ((decimal)(selectedrow.Cells["Price"].Value)).ToString("N2");
      

      【讨论】:

        猜你喜欢
        • 2013-09-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-02
        • 2017-11-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多