CLR: .Net / Mono / Boo / Otros CLR > C#
Como efinir un evento de validacion para multiples controles
(1/1)
eduardojr:
Hola!
Como podria hacer para ahorrar tiempo y espacio definiendo un comportamiento para un tipo de controles en C#?
El problema es el siguiente:
Tengo 30 ComboBox.
Para los 30, en el evento KeyPress asigno e.Handled = true; para evitar que el usuario escriba en el ComboBox
Para realizar esto tengo que seleccionar los 30 controles, y uno por uno ir asignando e.Handled = true;
La pregunta es: ¿De qué forma podría asignar e.Handled = true; en todos mis controles ComboBox?
Saludos!
tannke:
buenas, bienvenido al foro, bueno, entiendo estas usando visualstudio para hacer la aplicación, bueno, la manera para realizarlo es la siguiente:
creas un evento KeyPress para el primero, a continuación para que todos los demás apunten al mismo evento te dirijes al cuadro de (normalmente) la derecha el de propiedades y le das a la pestaña de eventos (la del rallito) y ahi buscas en el listado el evento keyPress. Cuando pulses una vez sobre el te aparece a la derecha un combobox para seleccionar el metodo al cual quieres asociar el evento, y ahi tiene que estar el primero que creastes, lo seleccionas y listo.
Haces esto con todos y listo. Un saludo
eduardojr:
Hola tankee.
Gracias por la respuesta. Me sirvió.
Saludos!
eversm:
tambien puedes herederar todos los controles que quieras que tengan ese evento de otro donde ya la hayas definido pr ejemplo:
--- Código: C# --- public class MyTextBox : TextBox { protected override void OnKeyPress(KeyPressEventArgs e) { if (e.KeyChar ==(char)Keys.Enter) e.Handled = true; base.OnKeyPress(e); } } public class TextHandled : MyTextBox { }
y creas todos los nuevos controles desde la clase TextHandled
eduardojr:
Hola eversm.
Voy a intentarlo también de esa forma. Es una buena opción para trabajarlo completamente desde el código.
Muchas gracias por la respuesta! Saludos!
Navegación
Ir a la versión completa