Control heredado de TextBox

02/09/2004 - 19:08 por Gustavo | Informe spam
Hola:

Estoy intentando crear un control heredado de textbox que solo permita la
pulsación de digitos y algunos caracteres de control.

El código está debajo.

Me gustaría saber como puedo controlar la pulsación de la combinación de
teclas Shift + Insert, para que no se pueda incluir en la caja de texto el
contenido del portapapeles.

Ya he controlado que no se haga caso de la pulsación de Ctrl + V, para que
no me pegue el contenido del portapapeles.

Saludos y gracias.



Gustavo Venero Alvarez.



Public Class IntBox

Inherits System.Windows.Forms.TextBox

'Clase que hereda de TextBox y que solo permite

'pulsar dígitos y caracteres de control

Protected Overrides Sub OnKeyPress(ByVal e As
System.Windows.Forms.KeyPressEventArgs)

If e.KeyChar.IsLetter(e.KeyChar) _

Or e.KeyChar.IsPunctuation(e.KeyChar) _

Or e.KeyChar.IsSeparator(e.KeyChar) _

Or e.KeyChar.IsSurrogate(e.KeyChar) _

Or e.KeyChar.IsSymbol(e.KeyChar) _

Or e.KeyChar.IsWhiteSpace(e.KeyChar) _

Or e.KeyChar = Chr(22) Then

e.Handled = True

Exit Sub

End If

'Chr(22) es el valor ASCII de Ctrl + V

'No están controladas las combinaciones de teclas con

'Ctrl + C, X, Insert, Supr, ...

End Sub

End Class
 

Leer las respuestas

#1 Paulo Conde
02/09/2004 - 20:54 | Informe spam
Para controlar las combinaciones de teclas con Ctrl, Alt y Shift debes
capturar el evento KeyDown. En este evento en el parametro e te aparecen
propiedades que te indican si se estan presionando o no estas teclas,
tambien captura las teclas de función que en elvento KeyPress no se captran.

Saludos

Paulo G. Conde M.
+58-416-4721293
+58-273-5412395

Barinas, Venezuela

Preguntas similares