使用MVVM绑定,在剑道ui网格中将特定列设置为可编辑

使用MVVM绑定,在剑道ui网格中将特定列设置为可编辑,mvvm,kendo-ui,Mvvm,Kendo Ui,我正在使用剑道ui web网格。我正在试图找出如何使一列可编辑,另一列不可编辑。Teleriks文档似乎只涵盖声明自己的数据源对象时的情况。但是我使用的是MVVM声明性绑定。所以我没有显式地创建数据源。对于这个场景,我只能找到将整个网格设置为可编辑的文档(通过将kendoGrid初始化的配置设置为editable:true),而不能找到如何选择性地将特定列设置为可编辑/不可编辑的文档 有人能帮我吗 (Telerik应该仔细查看他们的文档,似乎所有的api文档和how-to都集中在使用dataso

我正在使用剑道ui web网格。我正在试图找出如何使一列可编辑,另一列不可编辑。Teleriks文档似乎只涵盖声明自己的数据源对象时的情况。但是我使用的是MVVM声明性绑定。所以我没有显式地创建数据源。对于这个场景,我只能找到将整个网格设置为可编辑的文档(通过将kendoGrid初始化的配置设置为
editable:true
),而不能找到如何选择性地将特定列设置为可编辑/不可编辑的文档

有人能帮我吗


(Telerik应该仔细查看他们的文档,似乎所有的api文档和how-to都集中在使用datasource对象的不太优雅的编程绑定上,这使得人们对于如何使用MVVM绑定完成同样的事情一无所知)。

您可以尝试创建列(不指定字段的列只是模板)或将数据源配置中的选项设置为false

var dataSource = new kendo.data.DataSource({
    schema: {
        model: {
            id: "ProductID",
            fields: {
                 ProductID: {
                    //this field will not be editable (default value is true)
                    editable: false
                 }
           }
       }
   }

}))

你的回答当然有效,谢谢。不幸的是,它不适用于我的场景。我没有显式地创建kendo.data.DataSource。我通过kendo.data.Model.define()子类ObservalbeObject并创建网格行元素。这里有一个JSFIDLE来说明我的场景:所以我希望“Random”列是非可编辑的