- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试使用类对象列表填充 DataGridViewComboBoxColumn
(使用 ToString
重载)。对于常规组合框,此方法对我来说非常有效。但是,一旦我将 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'.
最佳答案
我相信您的 ValueType
必须是 string
。typeof
部分应该是提取值的方法,可能在您的 ToString()
中。
关于c# - 我可以使用 DataGridViewComboBoxColumn 来显示类对象列表吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16279721/
假设我拥有的数据是'valuenumber1'、'valuenumber2'、'valuenumber3'。 我有一个问题,如果'valueNumber2'或'valueNumber3'是一个问题,将
在我的 datagridview 中,当单击 datagridviewComboBoxColumn 以填充其下拉列表时,它没有显示我需要单击 2 次的下拉列表。第一次它只关注 datagridview
我有一本字典,它的键是三个字母的国家代码,值是国家的名称。 Dictionary CountryList=new Dictionary(); 我还有一个 DataGridView 和一个 DataTa
这个问题在这里已经有了答案: c# add a dgv row with a dataGridViewComboBoxCell (3 个答案) 关闭10 年前。 我有一个 DataGridView,
我正在使用带有 DataGridViewComboBoxColumn 的 DataGridView,我需要在组合框项的左侧添加图标。我目前正在使用 EditingControlShowing 事件以及
我正在使用 DataGridView 构建一个表,用户可以在其中从每个单元格的下拉列表中选择项目。为了简化问题,假设我有 1 列。我在设计器中使用 DataGridViewComboBoxColumn
我有一个带有几个 DataGridViewComboBoxColumns 的 DataGridView。 DataGridView 上有一个 CellEnter 事件处理程序,用于单击下拉组合框。 该
我正在尝试在 DataGridView 中设置一些内容。看起来这应该很简单,但我遇到了麻烦。我想显示三列: 代码ID 代号 带有 TypeName 的 DisplayMember 和 TypeID 的
在任何人将此标记为重复之前,请注意这与提出的问题不同 here , here和 here . 当您的 DataGridView 中有两个或多个 DataGridViewComboBoxColumn,并
嗨,我在运行时将数据绑定(bind)到 datagridview 组合框。但是我如何让它自动显示第一个项目呢?我无法从 DataGridViewComboBoxColumn 中找到 selectedi
我正在使用 DataGridView,它是使用设计器创建的,其中包含几列,包括 DataGridViewComboBoxColumn 列。 有点烦人的是我必须点击每个单元格两次甚至三次才能显示下拉列表
我创建了一个 DataGridView 对象,其中包含 DataGridViewComboBoxColumn 类型的列,以允许用户从下拉列表中选择值。例如,如果用户选择“高”,我想为组合框的背面着色。
我有一个 DataGridViewCobmoboxColumn那必须在屏幕的最右侧。单元格中的项目比单元格宽度宽,因此下拉列表也比单元格宽,因此用户可以看到顶部选择的内容。当列表下拉时,下拉列表的右侧
我试图用字符串列表填充 DataGridViewComboBoxColumn,然后根据它们在表单加载时的值选择其中一个。 人们认为这是一项简单的任务,但我就是做不对。 我正在用这样的字符串填充 Dat
我有一个 combobox 列的 datagridview。我填充组合框列。当我从组合框列中选择任何文本时,我需要在 for 循环中读取数据时获取值。 这里是dgFilter datagridview
假设我有两个表: work_hours work_hours_id | date | _project_id 1 1.2. 10 2
我有一个数据 GridView ,它是通过从 SQL 服务器获取数据来填充的。 gridview.Datasource = dataSet.Tables[0] -> 没问题。 在这个网格中,一列是 C
我正在编写一个小型应用程序来查看和编辑 mySQL 表。 我想将 ComboBox 输入放在 DataGridView 中,以从其他表中的外键中选择数据。 有什么方法可以做到吗? 到目前为止我只找到这
我需要检查某个值是否存在于 DataGridViewComboBoxColumn 中。问题是 DataGridViewComboBoxColumn.Items.Contains() 想要一个对象,我给
大家好,我已经将我的 datagridview 与 DataGridViewComboBoxColumn 绑定(bind)如下 DataGridViewComboBoxColumn clnStatus
我是一名优秀的程序员,十分优秀!