KeyDown en el DataGrid (Pregunta Dificil)

01/10/2004 - 16:59 por FcoNavarroB | Informe spam
Que tal a todos tengo una pregunta algo dificil por que hasta el momento no
encontrado como hacerlo, tengo un DataGrid con un Estilo y lo que quiero
hacer es que cuando este en algunas celdas y precionan la Tecla F2 o similiar
me habra una ventana de busquedas, el detalle es que ni el DataGrid ni la
Forma responden al KeyDow cuando estoy dentro de una celda y quiero saber
como le puedo hacer por que se que no es imposible... si la solucion es
cachar los mensajes de windows o por API's de Windows alguien me puede decir
como hacer esto..

De antemano muchas gracias por su tiempo
 

Leer las respuestas

#1 fernando
01/10/2004 - 17:23 | Informe spam
hola , hay un metodo que se llama "ProcessCmdKey" , que esta en los
reemplazos del form en donde tienes el grid. Este metodo intercepta los
mensajes antes que sean procesados. En el ejemplo pregunto si la tecla es
F2, tambien pregunto si la columna del grid es la que necesito , a
continuacion lo que tengas que hacer

Protected Overrides Function ProcessCmdKey(ByRef msg As
System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As
Boolean
If msg.WParam.ToInt32() = CInt(Keys.F2) Then' aca preguntas si la
tecla es F2, no te olvides de preguntar por la columna que necesitas
If datagrid.CurrentCell.ColumnNumber = 2 Then

' aqui adentro lo que necesites hacer, para que siga el programa
prueba con do.events

End If

End If

Return MyBase.ProcessCmdKey(msg, keyData)

Enf Function

Espero te sirva.

fernando


"FcoNavarroB" escribió en el mensaje
news:
Que tal a todos tengo una pregunta algo dificil por que hasta el momento


no
encontrado como hacerlo, tengo un DataGrid con un Estilo y lo que quiero
hacer es que cuando este en algunas celdas y precionan la Tecla F2 o


similiar
me habra una ventana de busquedas, el detalle es que ni el DataGrid ni la
Forma responden al KeyDow cuando estoy dentro de una celda y quiero saber
como le puedo hacer por que se que no es imposible... si la solucion es
cachar los mensajes de windows o por API's de Windows alguien me puede


decir
como hacer esto..

De antemano muchas gracias por su tiempo

Preguntas similares