'EditingControlShowing event. This event is fired when the user tries to edit the content of a cell: Private Sub DataGridView1_EditingControlShowing( _ ByVal sender As Object, _ ByVal e As System.Windows.Forms. _ DataGridViewEditingControlShowingEventArgs) _ Handles DataGridView1.EditingControlShowing '---restrict inputs on the Amount Field--- If Me.DataGridView1.CurrentCell.ColumnIndex = DataGridView1.Columns("Amount").Index And Not e.Control Is Nothing Then Dim tb As TextBox = CType(e.Control, TextBox) '---add an event handler to the TextBox control--- AddHandler tb.KeyPress, AddressOf TextBox_KeyPress End If End Sub 'KeyPress event handler to the TextBox control that you want to restrict. 'This KeyPress event handler will be invoked when the user types into the cell and it is defined as follows: Private Sub TextBox_KeyPress( _ ByVal sender As System.Object, _ ByVal e As System.Windows.Forms.KeyPressEventArgs) '---if textbox is empty and user pressed a decimal char--- If CType(sender, TextBox).Text = String.Empty And _ e.KeyChar = Chr(46) Then e.Handled = True Return End If '---if textbox already has a decimal point--- If CType(sender, TextBox).Text.Contains(Chr(46)) And _ e.KeyChar = Chr(46) Then e.Handled = True Return End If '---if the key pressed is not a valid decimal number--- If (Not (Char.IsDigit(e.KeyChar) Or _ Char.IsControl(e.KeyChar) Or _ (e.KeyChar = Chr(46)))) Then e.Handled = True End If End Sub
Kamis, 16 Desember 2010
Validate a column in DataGridView
Prevent the user from entering data other than numbers to a DataGridView cell
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar