GXT 2.2.5更改行编辑器状态



使用gwt gxt。是否可以通过EG MessageBox更改活动行编辑器状态?我创建了一个事件,该事件调用带有文本区域的消息框,并且为了将文本中的文本放入网格中,我需要调用roweditor.stopediter.stepediting(true),然后手动将文本插入数据网格,然后执行roweditor.starteditor.starteditor.tected(true)。看起来像:

re.stopEditing(true);
List<Model> list = data.getModels();
list.get(activeRow).set("key","value");
re.startEditing(activeRow, true);

它有效...但是用户在需要时无法取消更改,因为他们已经通过retoteding(true);

来保存。

听起来像是stopEditing导致您不想要的状态变化(保存更改),并且没有其他API跳过该副作用,那么有一些潜在的选项(由于我不熟悉这个库,我将与一般模式交谈):

  1. 不要在"真实"模型上称其为:使用克隆/副本来完成所有工作,然后在要进行更改时,将更改保存到真实模型中。
  2. 您可以在进行任何编辑之前存储模型的"原始"状态?那么,通过stopEditing完成了多少个中间保存,您可以仅通过还原原始模型来实现取消操作。
  3. 如果这两种不可能,则有一个更复杂的选项 - 查看stopEditing的源代码 - 您可以扩展类以覆盖此方法,删除不希望的功能吗?如果涉及一堆私人变量,您始终可以通过反射将其暴露于扩展名,或者根据需要进行详细的扩展。

希望其中之一能够应用于您的情况。

相关内容

  • 没有找到相关文章

最新更新