Esperando alguna ayudita, me despido atte. Markos

| |||
Accionar evento KeyPress en DataGrid Hola a tod@s, lo ke deseo hacer es accionar un evento KeyPress en un DataGrida, pero debe ser al momento de editar una celda en especial, ya que este evento (Private Sub MiDataGrid_KeyPress(...)) funciona cuando tiene el foco el DataGrid, y no cuando estoy editando dentro de una celda en especial. Esperando alguna ayudita, me despido atte. Markos ![]() |
| |||
Respuesta: Accionar evento KeyPress en DataGrid Primero cabe aclarar los siguiente: 1) No soy un experto en el tema quizas ni si quiera un usuario intermedio. 2) Jamas estudie programacion (aprendo a los ponchazos, pero hay muchisimas cosas que no se 3) Soy bastante flojo (vago, perezoso, se entiende no?) aclarado esto te digo lo siguiente. * al usar DataGridView el evento keypress deja de funcionar si estamos editando una celda. * no obstante podemos al editar una celda usar EditingControlShowing para el DGV y generar un handle para usarlo con el keypress. -------------------------------------------------------------------------------------------------------- Entiendo que no soy muy claro, por eso te pongo el codigo que use yo y que me funciona bastante bien --------------------------------------------------------------------------------------------------------
Código:
Private Sub dataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing Dim txtEdit As TextBox = e.Control RemoveHandler txtEdit.KeyPress, AddressOf txtEdit_Keypress AddHandler txtEdit.KeyPress, AddressOf txtEdit_Keypress End Sub Private Sub txtEdit_Keypress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) If e.KeyChar = "." Then e.KeyChar = "," End If End Sub PD: Entiendo que estoy reviviendo un post antiguo, pero al ser uno de los primeros que salen al buscar en google me parecio que valia la pena responder |