我使用itemRenderer在一列中有一个带有RadioButtons的DataGrid。 DataGrid驻留在TitleWindow上,每当用户单击按钮时,它就会被创建并弹出。 DataGrid的dataProvider是一个ArrayCollection,当显示窗口和DataGrid时,RadioButtons是根据每个ArrayCollection项中的布尔值选择的。如果用户单击DataGrid中的其他RadioButton,则使用新的布尔值更新ArrayCollection项。
问题在于第一行中的RadioButton保持其选定值。使用所有其他行中的RadioButtons,当显示TitleWindow和DataGrid时,将根据ArrayCollection中项目的布尔值选择正确的RadioButton。但是如果第一行的RadioButton是需要选择的那个,那就不是。我在RadioButtons上为valueCommit事件设置了一个监听器,结果很有意思:除第一行之外的所有行中的RadioButtons的valueCommit仅被触发一次,所选值为true。但是如果第一行中的RadioButton是应该选择的那个,则valueCommit被激活 5次,前3次报告所选值为true,最后2次报告为false。
对此的任何帮助将不胜感激。类似bug has been reported但它没有提供任何解决方法。
更新12/18/08 好的,valueCommit被触发5次,第四次是假,第五次假的时间是假的,实际上对应于数据ALWAYS中的索引2,无论它是什么。因此,4次报告第一个RadioButton,最后一次为假,第五次报告索引2为false。怪异!
答案 0 :(得分:0)
解决方案:我没有使用RadioButtons作为itemRenderer,而是使用了一个图像,它工作得更清晰,并且不会产生太多不可预测的行为。