1
6
如果试图从一个组合框列中获取所选值,则可以处理DataGridView CellParsing事件,并从DataGridView.EditingControl获取所选项,因为它将被设置为从已编辑列编辑控件。以下是一个例子:
您还可以通过处理单元格格式事件自定义对象在每个单元格上的显示方式,下面是一段代码,用于显示任何对象或接口的toString。
处理这两个事件应该足以显示和编辑任何业务对象及其easer中的数据,然后写入类型转换器。对于此工作,请按如下方式设置DataGridView和combobox列:
希望它能有所帮助。 |
2
6
你错过了一个可能的片段。
更新: 事实上,在再次阅读您的问题之后,我认为您正面临着那个著名的bug。不幸的是,如果不使用自定义TypeDescriptor/TypeConverter/BindingSource,就无法让它返回绑定对象。 回答绑定到复杂对象的问题。默认情况下没有。我为我当前的项目写了一篇很好的文章。这涉及到创建一个自定义TypeDescriptor/TypeConverter/BindingSource,返回所有嵌套属性。另一个“bug”,你不能使用“.”作为成员分隔符,我不得不使用“:”来代替。 |
3
5
实际上,您可以在中使用复杂类型
例如:
非常重要-需要重写复杂类型的“Equals”方法。
|
4
3
我不断地遇到同样的问题,直到我发现你不能设置
然后绑定变成:
这应该可以工作,并且单元格的值应该是预期的Foo类型。 一个有趣的参考: Problems with the DataGridViewComboBoxColumn
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
i_sniff_ket · 在unity之外使用unity类 2 年前 |