我是否可以获取网格中所有列的属性,如宽度,编码,字段标题等。目标是覆盖网格的列设置并将其保存在数据库中。
我想覆盖它,例如:
var columns = new[]
{
new GridColumnSettings
{
Member = "ProductName",
Width = "200px"
},
new GridColumnSettings
{
Member = "UnitPrice",
Width = "130px",
Format = "{0:c}",
},
new GridColumnSettings
{
Member = "UnitsInStock",
Width = "130px"
},
new GridColumnSettings
{
Member = "LastSupply",
Width = "130px",
Format = "{0:d}"
},
new GridColumnSettings
{
Member = "Discontinued"
},
new GridCommandColumnSettings
{
Commands =
{
new GridEditActionCommand(),
new GridDestroyActionCommand()
},
Width = "200px",
Title = "Commands"
}
};
答案 0 :(得分:1)
我会说问题不是,如果可以的话,问题是你应该。答案是否定的,你不应该。
这是不受支持的。网格是一个网格,它有自己的列,可以隐藏或显示列,可以移动,调整大小...... 但不应动态创建列。如果您更改宽度可能没问题,但只要您尝试更改名称,就不会因为实际删除列并创建另一个列。
那么,你为什么要这样做呢?也许有一种更简单的方法来获得相同的结果。
编辑:如果您想获取当前列状态,可以从grid.columns
数组中获取它们。其中grid
是KendoUI Grid对象。
示例:
var grid = $("#grid").data("kendoGrid")
console.log("Columns", JSON.stringify(grid.columns));
在此处查看此行动:http://jsfiddle.net/OnaBai/emD5t/2/