|
案例背景:1, 程序使用DevExpress的lookupedit来实现. 此控件的使用类似于combobox的使用, 这里想问的问题无关于控件, 想问下事件触发机制, 何时中断的问题.
首先, 下拉控件, 就说combobox1 吧和 combobox2 同时绑定了同一个source 就datatable吧, 分别绑定第一列和第二列的问题.
现在改变其中任一一个, 则另一个值保持改变. (Commobox貌似默认保持联动, 而我今天的lookupedit则默认不变). 所以我就想了如下的方法去改变:
1. 绑定lookupedit1 和 lookupedit2 的textChanged事件到一个方法, 去当前object的序号, 然后将2个序号和这个保持不变. 实际编译运行正常. 问题来了:
控件1 值改变, -> 触发事件 -> 改变控件2 值 ->触发事件 ->....(改变控件1值????) ->......
问题大概就是这样, 实际中, 我在互相改变前, 如果2者相同, 我是直接返回的, 来间接中断这个过程. [问题解决了?]
好吧, 问着问着就解决了, 如果我不判断, 就是互相引用对方值, 那会不会就死循环了??
问题之外: 懂DevExpress的知道 能不能设置默认显示值的格式了. 譬如datatable[2]列的值为长时间格式, lookupedit 的
Properties.ValueMember 就是这列, 但是我只想显示为短日期格式, 试了很多方式都不成功.
求解答. |
|