我正在尝试DataGridViewComboBoxColumn
用类对象列表(ToString
重载)填充 a 。这种方法对我来说非常适合常规组合框。但是,一旦我将其加载DataGridViewComboBoxColumn
到其中dataGridView
,每次单击远离数据网格时都会引发错误。
这是错误。
The Following Exception Occurred in the DataGridView:
System.ArgumentException: DataGridViewComboBoxCell value is not valid.
To replace this default dialog please handle the DataError event.
这是在错误对话框之前执行的代码:
DataTable dt = new DataTable();
List<mclass> MObjects = new List<mclass>();
DataGridViewComboBoxColumn objcolumn = new DataGridViewComboBoxColumn();
objcolumn.DataSource = MObjects;
objcolumn.ValueType = typeof(mclass);
dataGridView1.DataSource = dt;
dataGridView1.Columns.Add(objcolumn);
现在在错误消息之间,列工作正常。我可以完美地从列表中选择对象。如何让这个错误消失并让我的工作组合列安静下来?我错过了什么吗?还是我需要找到一种方法来删除该错误消息?
经过一些研究,我尝试添加这一行:
dt.Columns.Add("OBJList", typeof(mclass));
然而,这会产生同样的例外,更长的时间(我省略了大部分,可根据要求提供):
The following exception occurred in the DataGridView:
System.FormatException: Invalid cast from 'System.String' to 'Namespace.mobject'. --->
System.InvalidCastException: Invalid cast from 'System.String' to 'Namespace.mobject'.