Ver Mensaje Individual
  #6 (permalink)  
Antiguo 05/10/2012, 12:18
Avatar de drako_darpan
drako_darpan
 
Fecha de Ingreso: octubre-2008
Ubicación: Sinaloa
Mensajes: 617
Antigüedad: 15 años, 6 meses
Puntos: 58
Respuesta: Evitar avance de renglon en DGV al presionar Enter

Hola que tal, bueno por ya lo implemente y funciona bien. Para esto genere un UserControl y lo anexe a las herramientas del C#.

Para eso solo necesitan anexar esto:

Código C#:
Ver original
  1. public class GridCtrl : DataGridView
  2.     {
  3.             protected override bool ProcessDataGridViewKey(KeyEventArgs e)
  4.             {
  5.                 if (e.KeyCode == Keys.Enter)
  6.                 {
  7.                     this.ProcessTabKey(e.KeyData);
  8.                     return true;
  9.                 }
  10.                 return base.ProcessDataGridViewKey(e);
  11.             }
  12.  
  13.             protected override bool ProcessDialogKey(Keys keyData)
  14.             {
  15.                 if (keyData == Keys.Enter)
  16.                 {
  17.                     this.ProcessTabKey(keyData);
  18.                     return true;
  19.                 }
  20.                 return base.ProcessDialogKey(keyData);
  21.             }
  22.     }

Cuando generen el DLL, en el modulo donde van a anexar el Grid personalizado van a TOOLS => CHOOSE TOOLBOX ITEMS => Seleccionan la pestaña .NET Framwork y buscan la DLL del Control de Usuario que acaban de anexar.

Con esto en las tools les aparecera el nuevo control que acaban de generar.

Solo tiene un detalle que al dar enter si hacen alguna validacion avanza una columna sin importar si esta mal la validacion.

Cualquier cosa aqui estamos para apoyar