URGENTE - TECLAS EN GRILLA

03/09/2005 - 17:33 por COMHCD | Informe spam
Alguien sabe como hacer para cuando la Grilla esta cargado con Datos(desde un
Dataset, Datatable, etc), responda a los eventos de una tecla. La idea es que
cuando le doy la tecla INSERT, DELETE o ENTER me debe aparecer un formulario
de edicion segun los casos respectivamente.
Hasta ahora he puesto la propiedad de Keypreview=true el formulario, pero no
me responde el evento cuando estoy posicionado en una de las celdas de la
grilla, solo cuando estoy fuera de la celda o cualquier otro control ahi si
funciona.

Ayuda
 

Leer las respuestas

#1 Imac_Man
04/09/2005 - 07:38 | Informe spam
Hola amigo,

como veo tu caso debes cargar el grid con el dataset y crear eventos para
tus columnas algo asi...imaginamos una tabla Clientes con 2 camposte
paso el codigo a continuacion para que lo revises pruebalo y cualquier duda
me cuentas.Saludos

Private Sub Carga_Grid()
DataGrid1.DataSource = DataSet1.Tables(0)
DataGrid.TableStyles.add(Col_Grid(DataSet1))
end sub

Private function Col_Grid( Datos as DataSet) as DataGridTableStyle
dim Tabla as new DataGridTableStyle
dim Col as new DataGridTextBoxColumn
Tabla.mapping = Datos.tables(0).tablename

Col.mapping = Datos.tables(0).Columns("CodigoCliente")
Col.width = 40
Col.header = "Codigo del Cliente"
Tabla.ColumnStyles.add(Col)
AddHandler Col.KeyDown, AddressOf Evento_KeyPress

Col = new DataGridTexboxColumn
Col.mapping = Datos.tables(0).Columns("NombreCliente")
Col.width = 200
Col.header = "Nombre del Cliente"
Tabla.ColumnStyles.add(Col)
AddHandler Col.KeyDown, AddressOf Evento_KeyPress

Return Tabla
End Function

Private sub Private Sub Evento_KeyPress(ByVal sender As Object, ByVal e As
System.Windows.Forms.KeyEventArgs)
If e.KeyCode = Keys.Insert Then
'Aqui lanzas tu formulario
End If
End sub

"COMHCD" escribió en el mensaje
news:
Alguien sabe como hacer para cuando la Grilla esta cargado con Datos(desde
un
Dataset, Datatable, etc), responda a los eventos de una tecla. La idea es
que
cuando le doy la tecla INSERT, DELETE o ENTER me debe aparecer un
formulario
de edicion segun los casos respectivamente.
Hasta ahora he puesto la propiedad de Keypreview=true el formulario, pero
no
me responde el evento cuando estoy posicionado en una de las celdas de la
grilla, solo cuando estoy fuera de la celda o cualquier otro control ahi
si
funciona.

Ayuda

Preguntas similares