【发布时间】:2016-04-10 11:15:17
【问题描述】:
我正在 C# windows 窗体中创建一个应用程序,并希望在 datagridview 单元格中编辑期间将 datagridview 单元格格式设置为十进制,如 0.00。鉴于以下事件正在帮助我实现此目的,但是当我在新行中进行编辑时,这会生成错误“其他信息:对象引用未设置为对象的实例。” 活动如下
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
if (e.ColumnIndex == 0 && e.RowIndex != this.dataGridView1.NewRowIndex)
{
double d = double.Parse(e.Value.ToString());
e.Value = d.ToString("0");
}
if (e.ColumnIndex == 5 && e.RowIndex != this.dataGridView1.NewRowIndex)
{
double d = double.Parse(e.Value.ToString());
e.Value = d.ToString("0.00");
}
if (e.ColumnIndex == 6 && e.RowIndex != this.dataGridView1.NewRowIndex)
{
double d = double.Parse(e.Value.ToString());
e.Value = d.ToString("0.00");
}
}
请帮我解决问题。
【问题讨论】:
-
尝试单步执行代码,哪一行会抛出错误?
-
if (e.ColumnIndex == 5 && e.RowIndex != this.dataGridView1.NewRowIndex) { double d = double.Parse(e.Value.ToString()); e.Value = d.ToString("0.00"); } 此行正在生成错误。或建议我解决我的问题的任何其他逻辑
-
附上亲爱的 Poul Bak 错误短屏
标签: c# winforms datagridview