MVC Grid View allows you to provide a custom edit mode layout by creating an appropriate template for particular edited row cells or an entire Edit Form.
This demo describes how a template for the grid's Edit Form can be defined using the SetEditFormTemplateContent method. Within a template, custom label-editor pairs and Update/Cancel buttons are explicitly created using helpers from DevExpress Data Editors extensions (such as the Label, TextBox, ComboBox, SpinEdit, Button, etc.).
Editors used within a template are customized in the following simple manner: they are bound to corresponding model data fields (using the Bind method), are named according to these fields (using the Name property), and their ability to automatically visualize model errors when validation fails is enabled (using the ShowModelErrors property).
Editors bind to values of the model's currently edited data object. Note that this object is passed into a template either automatically (as a template container's DataItem property - when a grid row is just switched to edit mode) or manually (as a ViewData data object passed from a controller - when data modifications cannot be accomplished due to input validation fail and it is required to return the edited data object back to the view's Edit Form without losing user changes). To correctly transfer values from DevExpress editors back to corresponding data model fields, the DevExpressEditorsBinder model binder is used within controller actions.
Buttons that represent the Update and Cancel links are customized so that their Text properties are defined ("Update" and "Cancel" texts) and the Click client events are handled to call the grid's respective client methods - UpdateEdit and CancelEdit.
Local Copy of this Demo
To inspect the source code for this demo on your machine, you must first install our components via the DevExpress Component Installer.
You can open a local copy of this online demo directly from this webpage (if using v20.2.8, 21.1.4 or higher).
The source code files for this demo are installed (by default) in the following directory:
Open CS Solution
\Users\Public\Documents\DevExpress Demos XX.X\Components\ASP.NET\CS\MVCxGridViewDemos