【问题标题】:Setting DataGridView.DefaultCellStyle.NullValue to null at designtime raises error at adding rows runtime在设计时将 DataGridView.DefaultCellStyle.NullValue 设置为 null 会在添加行运行时引发错误
【发布时间】:2010-09-08 01:49:50
【问题描述】:

在 Visual Studio 2008 中

  • 向表单添加新的 DataGridView
  • 编辑列
  • 添加一个新的 DataGridViewImageColumn
  • 打开该列的 CellStyle Builder(DefaultCellStyle 属性)
  • 将 NullValue 从 System.Drawing.Bitmap 更改为 null
  • 尝试在运行时向 DataGridView 添加新行 (dataGridView1.Rows.Add();)
  • 您收到此错误:System.FormatException:已格式化 单元格的值类型错误。

如果将 NullValue 改回 System.Drawing.Bitmap(原样),添加行时仍然会出现相同的错误。

如果您在运行时而不是设计时设置 NullValue,则不会出现任何错误。 (dataGridView1.Columns[0].DefaultCellStyle.NullValue = null;)

你能告诉我这是为什么吗?

【问题讨论】:

    标签: c# datagridview null


    【解决方案1】:

    复选框不能有字符串值。 不要在 IDE 属性对话框中设置任何默认值。 我将“空”写入 RowsDefaultCellStyle.Format 属性并导致错误。 这是自己造成的。作为修复,我试图将复选框状态设置为未选中,但我只需要删除字符串值。

    【讨论】:

      【解决方案2】:

      我发现,如果您从“格式”区域和默认空值区域一起从设计器中删除项目,效果会更好。然后它将它设置回真正的空值。我将尝试在 init 部分中将其设置为远离设计器生成的废话。

      【讨论】:

      • 这又是 yoda,是的,通过设置:..DefaultCellStyle.DataSourceNullValue = CheckState.Unchecked; ..DefaultCellStyle.NullValue = CheckState.Unchecked;它让我做我想做的事。
      【解决方案3】:

      将 System.Drawing.Bitmap 中的 NullValue 更改为 null

      当您在设计器中的 NullValue 字段中输入“null”时,您指定了字符串值“null”。将 NullValue 设置为非字符串值的唯一方法是通过编程方式或通过自己修改设计器代码来设置它。

      【讨论】:

        【解决方案4】:

        克罗诺兹是对的。 在设计时设置它后,它会将其添加到 .designer.cs:

        dataGridViewCellStyle1.NullValue = "null";

        如果我将 "null" 修改为 null 那么它工作正常。我用反射器检查了 DataGridViewCellStyle.NullValue set_NullValue(Object) 和 get_NullValue,我认为字符串值不应该在这里引发任何错误。

        无论如何都要小心这个,如果你想设置它设计时间那么不要忘记修改.design.cs。

        【讨论】:

          【解决方案5】:

          这很可能是设计器中的一个错误;如果您查看 .designer.cs 文件(可能在将 NullValue 设置为 null 之前和之后进行比较),您应该能够看到它生成的代码。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-03-06
            • 2017-11-12
            • 1970-01-01
            相关资源
            最近更新 更多