Editing Overview
Editing is a basic functionality of the Telerik UI Grid component for ASP.NET Core which allows you to manipulate the way its data is presented.
The Grid provides the following edit modes:
Getting Started
To enable editing:
-
Set the
Editable
configuration:Razor@(Html.Kendo().Grid<ProductViewModel>() .Name("Grid") ... .Editable(e => e.Enabled(true)) )
The default edit mode is Inline. To use a different edit mode, specify it through the
Mode
option:Razor@(Html.Kendo().Grid<ProductViewModel>() .Name("Grid") ... .Editable(e => e.Mode(GridEditMode.PopUp)) )
For more information, refer to the HtmlHelper API and TagHelper API options on the possible configurations.
-
Declare the endpoint to which the updated records will be sent:
Razor.DataSource(dataSource => dataSource .Ajax() .PageSize(20) ... .Update("Editing_Update", "Grid") )
-
Specify the
Id
of theModel
within theDataSource
declaration:Razor.Model(model => model.Id(p => p.ProductID))
The
Model
method configures the model of the data source. For more information, refer to the article about theModel
definition. -
On the server, the expected parameters must be the DataSource request and the same model as the edited one:
Razor[AcceptVerbs("Post")] public ActionResult EditingInline_Update([DataSourceRequest] DataSourceRequest request, ProductViewModel product) { if (product != null && ModelState.IsValid) { productService.Update(product); } return Json(new[] { product }.ToDataSourceResult(request, ModelState)); }
For runnable examples, refer to the demos on implementing the editing approaches in the Grid.
Known Limitations
There are limitations when using editing along with other features of the component.
- If filtering is applied and
ServerOperation
is disabled in the DataSource configuration, adding new records is not allowed. - The component behaves differently, when it is grouped and you add a new record. If
ServerOperation
is enabled in the DataSource configuration, the new row is added as part of a separate (duplicate) group. IfServerOperation
is disabled, the new row is added as part of an existing group.
See Also
-
Incell Editing by the Grid HtmlHelper for ASP.NET Core (Demo)
-
Inline Editing by the Grid HtmlHelper for ASP.NET Core (Demo)
-
Popup Editing by the Grid HtmlHelper for ASP.NET Core (Demo)
-
Custom Editor by the Grid HtmlHelper for ASP.NET Core (Demo)
-
Custom Validation Editing by the Grid HtmlHelper for ASP.NET Core (Demo)