Márcio Fábio Althmann

Dica: Permitir a digitação de somente números no DataGridView

As vezes quando precisamos alterar dados diretamente no DataGridView (winForms) devemos travar a digitação somente para números, para fazer isso utilizamos o evento EditingControlShowing do grid, verificamos o tipo do controle que está recebendo a digitação e criamos um novo KeyPressEventHandler para o mesmo, no caso do código abaixo permito somente números Backspace.

   1: private void dgDistribuicoes_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e) 
   2: { 
   3:     if(e.Control is DataGridViewTextBoxEditingControl) 
   4:         e.Control.KeyPress += new KeyPressEventHandler(Control_KeyPress); 
   5: } 
   6:     
   7: void Control_KeyPress(object sender, KeyPressEventArgs e) 
   8: { 
   9:     if (!char.IsNumber(e.KeyChar) && e.KeyChar != (char)Keys.Back) 
  10:         e.Handled = true; 
  11: }
Posted: Jan 29 2009, 03:21 PM por mfalthmann | com no comments
Abaixo de:

Comentários

Sem comentários