Kendo ui Kendo UI MVVM-更改模型未触发数据源更改事件

Kendo ui Kendo UI MVVM-更改模型未触发数据源更改事件,kendo-ui,kendo-grid,kendo-mvvm,Kendo Ui,Kendo Grid,Kendo Mvvm,我有一个通过MVVM绑定到数据源的网格 我在网格中选择一行,因此我使用: var grid = e.sender; var rowSelected = grid.dataItem(grid.select()); this.set("currentAccount", rowSelected); 其中“currentAccount”保存当前选定的行。此外,“currentAccount”绑定到用户要编辑的表单 现在,当我对表单字段进行更改时,它们不会自动反映在网格上。我需要调用grid.refre

我有一个通过MVVM绑定到数据源的网格

我在网格中选择一行,因此我使用:

var grid = e.sender;
var rowSelected = grid.dataItem(grid.select());
this.set("currentAccount", rowSelected);
其中“currentAccount”保存当前选定的行。此外,“currentAccount”绑定到用户要编辑的表单

现在,当我对表单字段进行更改时,它们不会自动反映在网格上。我需要调用grid.refresh()以使更改显示在网格上。通过进一步调试,我注意到viewmodel中定义的用于网格的数据源并没有触发它的更改事件

但是,当用户按下“添加新记录”按钮时,以下命令用于在数据源内创建一个新的空模型,将.Add()函数返回的新模型设置为“currentAccount”:

在上面,我添加了一个新的空行。一旦我开始编辑表单字段,它们就会自动反映在网格上,而无需调用Grid.refresh。甚至viewmodel中定义的数据源也会触发其更改事件

知道为什么会有这种行为吗?
谢谢

听起来您更新的某些对象不是ObserveObject的实例。请用一个小演示来演示你的案例,这样我们就可以检查了。给你:我不是在剑道论坛上回答了类似的问题吗?
var newRow = this.get("accRegDatasource").add( this._makeAccountModel( 0 ) ); 
this.set("currentAccount", newRow); 
var row = input_map.grid().find(" tr[data-uid='" + newRow.uid + "']"); 
input_map.kendoGrid().select(row);