关于MultiRow上的GcComboBox
MultiRow上的GcComboBox(DataField绑定)如何实现,显示第二列(比如name)的内容,而数据校验处理,更新处理用第一列(比如No.)的内容? MultiRow.getvalue(rowindex,cellindex) 可以么? 回复 1楼Kissmint的帖子感谢对该问题的反馈。
getvalue指的是获取单元格的值。
我不太理解你的意思,你是指建立映射关系,显示是数据源某列的文字,但存的是id么?
你可以设置TextSubItemIndex为需要实现的数据源的列的index,配合ValueSubItemIndex属性设置value。
可实现双绑定。 谢谢,请问在上述情况下,如何在CellValidating事件中获得编辑中的value值? 使用这个属性:CellValidatingEventArgs.FormattedValue 回复 5楼Carl的帖子
不行啊,这样和CurrentCell.EditedFormattedValue 取得一样,都是显示的文本,而不是value! 回复 6楼Kissmint的帖子
这个问题需要在CurrentCell.EditedFormattedValue获取到 文本 后,去GcComboBox 的数据中便利匹配获取value值。无法直接获取。 回复 7楼iceman的帖子
嗯,我感觉也是!但是文本还有可能是重复的,郁闷! 你可以考虑在EditingControlShowing事件中获取GcComboBox的EditingControl, 在这个Control上你可以拿到你想要的所有数据。 以下方法可以尝试一下:
(不知道你用的是什么语言,我之前使用MutiRow时使用的VB.NET,仅供参考)
IfMe.MultiRow控件对象名.EditingControl isnot nothing then
变量 = TryCast(Me.MultiRow控件对象名.EditingControl, GrapeCity.Win.MultiRow.该名称空间下对应的EditingControl类型).Value
End If
EditingControl类型 例如:
GrapeCity.Win.MultiRow.InputMan.GcNumberEditingControl
GrapeCity.Win.MultiRow.InputMan.GcTextBoxEditingControl
GrapeCity.Win.MultiRow.XXXEditingControl
页:
[1]
2