Hi Dimiter,
Now I have:
.Model(model =>
{
foreach (var column in Model.CPMMetaColumnData)
{
model.Field(column.ColumnName, column.SystemDataType).Editable(!column.ColumnisReadOnly);
};
model.Id("ID");
})
Where ReadOnly is filled with a bool. But the columns are still editable. I can't link with function ( c=>c.column), because the metadata is leading for displaying the columns.
What I'm doing wrong ?
Kind regards,
Paul
Using latest internal build (419)
Total declaration:
@model CPMPlanning.Models.CPMDataView
@(Html.Kendo().Grid(Model.CPMColumnData)
.Name("MaintGrid")
.Columns(columns =>
{
//int i = 0;
//foreach (var col in Model.CPMMetaColumnData)
//{
// columns.Bound(col.ColumnBound);
// i++;
//};
columns.LoadSettings((IEnumerable<
GridColumnSettings
>)Model.CPMGridColumnSettings);
columns.Bound("ID").Hidden();
})
.Editable(e => e.Mode(GridEditMode.InCell))
.Pageable()
.Sortable()
.Scrollable(s=> s.Height("auto"))
.Filterable()
.Groupable()
.Navigatable()
.ToolBar(toolbar => {
toolbar.Create();
toolbar.Save();
})
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.Model(model =>
{
foreach (var column in Model.CPMMetaColumnData)
{
model.Field(column.ColumnName, column.SystemDataType).Editable(!column.ColumnisReadOnly);
};
model.Id("ID");
})
.Read(read => read.Action("__Read", "CPMMaint", new { id = Model.TableID }))
.Update(update => update.Action("__Update", "CPMMaint", Model))
.Create(insert => insert.Action("__Insert", "CPMMaint"))
.Destroy(delete => delete.Action("__Delete", "CPMMaint"))
.Events(events => events.RequestEnd("onGridRequestEnd"))
.PageSize(ViewBag.PageSize)
)
)
<
script
>
function onGridRequestEnd(evt) {
if (evt.type === "update") {
evt.sender.read();
}
}
</
script
>