2021-12-13 10:38题主

关于combo控件keyName,bindField,bindFieldTo,displayField,itemId,valueField属性相关设置讨论

这段时间跟combo控件较上劲了,想实现combo控件选择一项后保存到数据库中,总是不能完美保存,能保存了,再次打开编辑窗口又不能显示保存的值,能显示保存的值了,但保存的内容又不是想保存的值。现把相关属性列出来,请高手讲解下它们之间的关系。
keyName:想利用系统自带的这个功能,把可供选择的值输入到键值表里,可以正确显示,但保存不了。
bindField:这个属性是不是跟itemId有冲突?itemId为字段名,同时设置这个为字段名后,界面会乱,看不到此控件了。
bindFieldTo:这个不知道绑定什么,查API是说有了bindField之后才能设置它。
displayField:这个是不是不能跟keyName同时设置?
itemId:这个是控件的ID名,同时也是字段名。这是我一直的设置,用系统自动添加控件功能自动添加的。
valueField:这个我理解的是用getValue()函数返回的值。
数据库里字段名是XM_ZT,keyName是xmzt。
我现在能达到的效果是:
在列表控件里看到的是键值,保存的是数字,是对的,但显示应该是汉字,不该是数字。

有以下问题没有解决:
在再次打开编辑对话框时,不能自动把原来保存的显示出来。后来改的能显示出来了,但直接点保存,会保存成空值,必须要重新选择一次才能正确保存。同一个对话框中其它类似字段也是相同问题。

有没有高手讲讲应该如何设置才能达到以下效果:
对话框和列表里combo显示是汉字,数据库里实际保存的是键值数字,双击列表记录弹出编辑对话框(对话框是复制的人员管理模块改的),自动用汉字显示原来保存的值?
2021-12-14 09:51#1
参考examples/templates/employee/edit.xwl示例的company字段的处理
2022-01-07 11:18#2
bindField是绑定到组件的itemId 表示同这个绑定的控件联动

返回开发者社区