Drop down menu 返回到默认值PowerBuilder 11

Drop down menu 返回到默认值PowerBuilder 11,drop-down-menu,powerbuilder,datawindow,Drop Down Menu,Powerbuilder,Datawindow,我有一个包含以下三列的DataWindow对象: 状态-哪个是复选框 标准-这是一个下拉菜单 另一个 当状态为1(选中)时,则条件。保护class='0'。如果用户从标准列表中选择“另一个标准”,则另一个.Protect='0'用户可以编写他想要的任何内容 问题是当用户改变主意并取消选中状态时。 条件和另一列具有他之前选择/编写的最后一个值。如何重置dropdownDW或如何恢复默认值 在itemchange事件中,我有以下内容: choose case dwo.name case "s

我有一个包含以下三列的DataWindow对象:

  • 状态-哪个是复选框
  • 标准-这是一个下拉菜单
  • 另一个
当状态为1(选中)时,则
条件。保护class='0'
。如果用户从标准列表中选择“另一个标准”,则
另一个.Protect='0'
用户可以编写他想要的任何内容

问题是当用户改变主意并取消选中状态时。 条件和另一列具有他之前选择/编写的最后一个值。如何重置dropdownDW或如何恢复默认值

在itemchange事件中,我有以下内容:

choose case dwo.name
  case "status"
    if  data ='0' then
      dw_list.modify("criteria.Protect='1'")
      dw_list.modify("another.Protect='1'")
    else
      dw_list.modify("criteria.Protect='0'")
    end if

在datawindow对象内状态列的Protect属性上使用表达式

比如:

case (describe('criteria.protect') when '0' then 1 else 0)

如果用户取消选中该框,OP将执行某种回滚。这与“提交”或“回滚”无关。。。OP只想在用户改变主意并取消选中复选框时,将“条件”和“另一个”列中的值重置为默认值。只需在现有的itemChanged事件中添加“this.setItem(行,“criteria”,)”和“this.setItem(行,“其他”,)”即可。
case (describe('criteria.protect') when '0' then 1 else 0)