在 Telerik 网格行中传递隐藏字段
Pass hidden fields in Telerik grid row
我在我的 asp.net 核心应用程序中使用 Telerik grid。
我有一个 Orders
的列表,我需要绑定一些要隐藏的字段(例如 CreatedBy
,以便在用户更新它们时获取它们。
我看到similar question没有答案。
我的代码
@(Html.Kendo()
.Grid(Model)
.Name("Orders")
.Columns(columns =>
{
columns.Bound(c => c.Name).Width(190);
columns.Bound(c => c.CreatedById).Hidden();
columns.Bound(c => c.ModifiedById).Hidden();
columns.Command(command => { command.Destroy(); }).Width(100);
})
.Editable(editable => editable.Mode(GridEditMode.InCell))
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.PageSize(20)
.ServerOperation(false)
.Events(events => events.Error("error_handler"))
.Model(model => {
model.Id(s => s.Id);
})
.Create(update => update.Action("BatchCreate", "Orders"))
.Read(read => read.Action("BatchRead", "Orders"))
.Update(update => update.Action("BatchUpdate", "Orders"))
.Destroy(update => update.Action("BatchDestroy", "Orders"))
)
)
最后,通过将隐藏字段添加到数据源模型解决了这个问题:
.Columns(columns =>
{
columns.Bound(c => c.Name).Width(190); // visible
columns.Bound(c => c.HiddenId).Hidden();
columns.Bound(c => c.HiddenOtherFiled).Hidden();
})
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
.Events(events => events.Error("error_handler"))
.Model(model =>
{
model.Id(s => s.Id);
model.Field(s => s.HiddenId);
model.Field(s => s.HiddenOtherFiled);
})
我在我的 asp.net 核心应用程序中使用 Telerik grid。
我有一个 Orders
的列表,我需要绑定一些要隐藏的字段(例如 CreatedBy
,以便在用户更新它们时获取它们。
我看到similar question没有答案。
我的代码
@(Html.Kendo()
.Grid(Model)
.Name("Orders")
.Columns(columns =>
{
columns.Bound(c => c.Name).Width(190);
columns.Bound(c => c.CreatedById).Hidden();
columns.Bound(c => c.ModifiedById).Hidden();
columns.Command(command => { command.Destroy(); }).Width(100);
})
.Editable(editable => editable.Mode(GridEditMode.InCell))
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.PageSize(20)
.ServerOperation(false)
.Events(events => events.Error("error_handler"))
.Model(model => {
model.Id(s => s.Id);
})
.Create(update => update.Action("BatchCreate", "Orders"))
.Read(read => read.Action("BatchRead", "Orders"))
.Update(update => update.Action("BatchUpdate", "Orders"))
.Destroy(update => update.Action("BatchDestroy", "Orders"))
)
)
最后,通过将隐藏字段添加到数据源模型解决了这个问题:
.Columns(columns =>
{
columns.Bound(c => c.Name).Width(190); // visible
columns.Bound(c => c.HiddenId).Hidden();
columns.Bound(c => c.HiddenOtherFiled).Hidden();
})
.DataSource(dataSource => dataSource
.Ajax()
.ServerOperation(false)
.Events(events => events.Error("error_handler"))
.Model(model =>
{
model.Id(s => s.Id);
model.Field(s => s.HiddenId);
model.Field(s => s.HiddenOtherFiled);
})