我想实现一个网格,其中有一些默认值,用户可以添加更多。因此,在默认行上它应该只有一个编辑按钮,但在其他行上它应该显示一个编辑和一个删除按钮。如何为不同的行设置不同的按钮。
这是带网格的.cshtml,目前每行都有一个编辑和删除按钮
@(Html.Kendo().Grid<GenericGridDTO>()
.Name(gridName)
.Columns(columns =>
{
switch (Model.ControlType)
{
case ControlTypeEnum.OneRow:
columns.Bound(m => m.Specification);
break;
case ControlTypeEnum.TwoRow:
columns.Bound(m => m.Parameter);
columns.Bound(m => m.Specification);
break;
}
columns.Command(command => { command.Edit(); command.Destroy(); }).Width(AppConstants.gridActionsWidth);
})
.ToolBar(toolbar => toolbar.Create())
.Editable(editable => editable.Mode(GridEditMode.InLine))
.DataSource(dataSource => dataSource
.Ajax()
.Sort(sort => sort.Add("Order").Ascending())
.Model(model =>
{
model.Id(p => p.Id);
model.Field(f => f.ParentId).DefaultValue(Model.ParentId);
model.Field(f => f.TableId).DefaultValue(Model.TableId);
model.Field(f => f.Order).DefaultValue(Model.DataSource.OrderBy(d => d.Order).LastOrDefault().Order + 1);
model.Field(f => f.ParentTable).DefaultValue(Model.ParentTable);
})
.Create(update => update.Action("CreateGeneric", "Generic"))
.Update(update => update.Action("EditGeneric", "Generic"))
.Destroy(update => update.Action("DeleteGeneric", "Generic"))
)
.BindTo(Model.DataSource)
)
在GenericGridDTO.cs我有这个
//Id of default parameter, null if manually added
public int? DefaultParameterId { get; set; }