Luego en el grid seleccionamos la propiedad Template en la esquita superior derecha del GridView:
En cada columna seleccionamos la propiedad DataItemTemplate donde arrastraremos el tipo de control segun el tipo de dato de la tabla, TextBox, ComboBox, SpinEdit, CheckBox, etc., y lo vincularemos con el campo del origen de datos:
Debemos agregar a cada control el evento ValueChanged del Client-Side Events para hacer un PerformCallback() del GridView y capturar en nuevo valor.
Tambien debemos habilitar la propiedad AllowFocusedRow del GridView:
Luego de tener vinculados todos los campos y los controles procedemos al llenado del origen de datos, llenaremos una DataTable que lo mantendremos en session para persistir los datos del GridView.

Ahora utilizaremos los siguentes eventos del grid para la manipuación de los datos y los controles:
- CommandButtonInitialize: Con este evento verificamos si solo hay una fila en el grid y ocultaremos el boton de eliminar.
- CustomCallback: Con este evento actualizaremos los campos en el dt en session para luego refrescarlos en el GridView.
- HtmlRowPrepared: Con este evento buscaremos los controles de tipo combox para llenarlos o bien para manipular el control al inicializar un nuevo registro.
- InitNewRow: Con este evento agregamos una nueva fila la cual todos los datos estan vacios esperando los datos a ingresar.
- RowDeleting: Con este evento eliminamos un registro del dt en session.
- RowDeleted: Con este evento validamos que no nos de error el GridView ya que no estamo utilizando los eventos de agregar, editar y eliminar generados por el asistente del GridView.
Que se muestre los textbox y check para insertar los datos.
ResponderBorrarEn el gridview
ResponderBorrar