我有一个用 C# 编写的 winform 应用程序。为了说明问题,我编写了以下代码片段。
class A
{
public E e{get; set;}
}
enum E
{
A=2,
B=3
}
void Form1_Load(object sender, EventArgs e)
{
A[] AA=new A[]
{
new A{e=E.A},
new A{}
};
dataGridView1.DataSource=AA;
}
我希望它在数据网格的第二行显示空白,但它会生成异常“System.ArgumentException:值'0'不是枚举'E'的有效值。”。我该如何处理?基本上数据是从其他程序返回的,我无法更改。
顺便说一句,我在 propertyGrid 中显示了一个值。它运作良好。当枚举值为空时,它显示一个空白单元格,这正是我想要的。但是数据网格的工作方式不同。