情况: 我扩展了一个网格,并添加了一个 onkeydown 事件来监听选项卡或箭头,这将允许用户转到下一个“可编辑”单元格。我这样做使用...
var grid = $("#" + that.gridId).data('kendoMyExtension');
grid.closeCell(currentCell);
grid.editCell(desiredCell);
当前行为: 它按预期工作,但是当单元格关闭时,它不会将数据(通过正确的绑定)保存到它所绑定的 ViewModel.Field 中。...但是,您在进行更改后按 Enter 键,您将保留更改。
我尝试过的: 在我进行焦点更改(并启动所有其他剑道编辑工具)之前手动进行更新,使用
{grid Context}
that.saveRow();
that.dataSource.sync();
但是这些不起作用。并且通常最终会在剑道的某个地方抛出一个未定义的错误。
我想要的是:
理想情况下,kendo 将提供至少一个 MVVM 和 kendo 扩展示例(用于网格),该示例具有绑定到的所有功能、事件等......但是......因为我可能不会在这里得到这个要求,所以我会满足于:
- 剑道在哪里“存储”这些变化?
- 使用什么方法来实际调用更新{对于 MVVM 绑定而不是数据源}。
- 我是否错过了 {one-way, two-way} 精神的绑定关键字?
- 剑道是基于淘汰赛的吗?我可以使用淘汰赛技术来解决我在剑道方面遇到的问题吗?
这个网格上的显示逻辑还有很多其他修改。我正在使用一个模板来确定单元格是否应该是可编辑的,一个模板来确定应该在非编辑和编辑模式下呈现什么,以及一些 IOC 逻辑将其连接到扩展...(仅供参考)