Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   .NET (http://www.forosdelweb.com/f29/)
-   -   Ejecutar evento (http://www.forosdelweb.com/f29/ejecutar-evento-595663/)

Vanessita 11/06/2008 10:30

Ejecutar evento
 
Hola gente.

Disculpen si mi pregunta es muy basica.

Quería saber como puedo hacer en c# para ejecutar un evento de un control determinado, por ejemplo una caja de texto desde
otro control.

Supongamos que tengo una caja de texto llamada textbox1, en el evento Validated mando a mostrar un mensaje, por ejemplo:
Messagebox.Show("Hola");


En un boton en el evento click quiero mandar a ejecutar el evento de esa caja de texto de forma que se muestre en pantalla
un mensaje. Por ejemplo en Visual Fox Pro era tan facil como colocar en el evento click del boton textbox1.Valid() y de esta
forma ejecutaba el evento Valid de la caja de texto.

Espero me puedan ayudar.

Saludos a todos.

jhonwilliams 12/06/2008 06:38

Respuesta: Ejecutar evento
 
En el evento click del botón iria esto:

C#
Código:

this.Validate();
Saludos
:adios:

Vanessita 16/06/2008 08:31

Re: Respuesta: Ejecutar evento
 
Gracias por tu respuesta.

El evento que quiero ejecutar o disparar es el de un textbox.
Si coloco lo textbox1,Validate(); eso me genera un error.

jhonwilliams 16/06/2008 09:39

Respuesta: Ejecutar evento
 
El this.Validate(); te valida los controles que estan en el formulario.

Si deseas postea el código que estas usando el el Validated del TextBox para entender mejor que es lo que te esta pasando.

Saludos
:adios:

Vanessita 16/06/2008 12:19

Re: Respuesta: Ejecutar evento
 
Hola.

Lo que pasa es que estoy trabajando con un proyecto para pocket pc y creo que en este tipo de proyectos no tengo acceso
a ese metodo Validate().

En una caja de texto tengo lo siguiente en el evento Validated...

<php>
private void txt_fecha_Validated(object sender, EventArgs e)
{
if (txt_fecha.Text < '01/01/2008')
Messagebox.Show("Error");
}
</php>

Lo que quiero es poder ejecutar o disparar ese evento desde otro lugar, por ejemplo ejecutarlo desde el evento click de un
botón. No sé si me explico. Por ejemplo si yo estuviera en Visual Fox Pro y yo quisiera ejecutar el evento Validated de esa
caja de texto desde el evento click de un boton simplemente colocaría txt_fecha.Validated(); sin embargo aca en c# me de un
error si coloco eso.

El error dice exactamente:

<QUOTE>
The event 'System.Windows.Forms.Control.Validated' can only appear on the left hand side of += or -=
</QUOTE>


Gracias.

jhonwilliams 17/06/2008 06:41

Respuesta: Re: Respuesta: Ejecutar evento
 
Cita:

Iniciado por Vanessita (Mensaje 2450933)

<QUOTE>
The event 'System.Windows.Forms.Control.Validated' can only appear on the left hand side of += or -=
</QUOTE>

Este error te indica que el evento no esta asociado al textbox, para ello verifica que el textbox del CF soporte el evento Validated.

Y luego lo asocias al textbox que quieres validar, asi:

Código:

textBox1.Validated += new EventHandler(textBox1_Validated);
Otra que podrías hacer, si aplica claro esta es realizar esa validación en otro lugar, como un botón guardar, antes de guardar verificar que la fecha este correcta, si no informar al usuario para que la corrija, de lo contrario continuas con el evento y guarda los datos.

Saludos
:adios:

jhonwilliams 17/06/2008 06:44

Respuesta: Ejecutar evento
 
Momento, acabo de abrir el Visual Studio 2005 y en un proyecto de Windows CE, agrego al formulario un TextBox y evidentemente los eventos Validated y Validating si existen, es decir si los soporta.

Saludos
:adios:

JonhyReyes 17/06/2008 10:47

Respuesta: Ejecutar evento
 
Mmm... y no lo puedes llamar así This.txt_fecha_Validated(sender,e) ????
En Basic se puede... porque de hecho todos los metodos que se crean son procedimientos del Formulario.... si lo quieres accesar desde otro objeto fuera del formulario.... bastaria con ponerlo como 'Public'

PD: Manejo más la sintaxis de Vb si el ejemplo que te di no funciona.... Espero comprendas la idea

Vanessita 23/06/2008 07:01

Re: Respuesta: Ejecutar evento
 
Hola, gracias por responder.
Bueno si te he entendido, sin embargo no lo he podido hacer, no me funciona. Seguiré investigando.

Saludos...

GodLike_ 14/09/2008 10:35

Pregunta: Ejecutar evento
 
HOLA YO TENGO UNA PREGUNTA MAS BASICA CREO
en realidad me siento frustrado con C#; recien estoy empezando a usarlo

Pero que dificil es crear un evento::neurotico

Lo que quiero es que cuando el usuario haga click en una caja de texto, genere un evento para llamar a un metodo cualquiera.
Tan basico como eso no puedo encontrar una ayuda certera en msdn.


Para mi eso es facilicimo en Java netbeans; solo jalo la caja de texto al formulario
hago clic derecho despues eventos y en mousclicked, y automaticamente me genera el evento.

Como me complican los de mocosoft; no lo pueden hacer asi de sencillo.

Gracias por sus respuestas.

Cita:

Iniciado por Vanessita (Mensaje 2444803)
Hola gente.

Disculpen si mi pregunta es muy basica.

Quería saber como puedo hacer en c# para ejecutar un evento de un control determinado, por ejemplo una caja de texto desde
otro control.

Supongamos que tengo una caja de texto llamada textbox1, en el evento Validated mando a mostrar un mensaje, por ejemplo:
Messagebox.Show("Hola");


En un boton en el evento click quiero mandar a ejecutar el evento de esa caja de texto de forma que se muestre en pantalla
un mensaje. Por ejemplo en Visual Fox Pro era tan facil como colocar en el evento click del boton textbox1.Valid() y de esta
forma ejecutaba el evento Valid de la caja de texto.

Espero me puedan ayudar.

Saludos a todos.


SbsXrX 07/10/2008 15:47

Respuesta: Ejecutar evento
 
Es muy sencillo, el listado de eventos de cada objeto que este creado por medio de la interfaz visual, lo tienes en la misma ventana que las propiedades, por defecto ocupa el lado derecho inferior, en esa misma ventana veras un icono en forma de rayo, al hacerle click veras todos los eventos del objeto seleccionado.
Solo deberas hacer doble click sobre el espacio en blanco que hay al lado del evento que quieras, se creara automaticamente el codigo para el evento y te llevara a el para que escribas lo que desees.

En tu caso solo deberas agregar:

TU_Metodo();

al codigo generado entre las llaves. { }
Y si lo que quieres es que se dispare cuando el control obtiene el foco el evento correspondiente es: Enter

Saludos y espero que esta sea la respuesta a tu duda.

GodLike_ 07/10/2008 21:46

Respuesta: Ejecutar evento
 
Cita:

Iniciado por SbsXrX (Mensaje 2610227)
Es muy sencillo, el listado de eventos de cada objeto que este creado por medio de la interfaz visual, lo tienes en la misma ventana que las propiedades, por defecto ocupa el lado derecho inferior, en esa misma ventana veras un icono en forma de rayo, al hacerle click veras todos los eventos del objeto seleccionado.
Solo deberas hacer doble click sobre el espacio en blanco que hay al lado del evento que quieras, se creara automaticamente el codigo para el evento y te llevara a el para que escribas lo que desees.

En tu caso solo deberas agregar:

TU_Metodo();

al codigo generado entre las llaves. { }
Y si lo que quieres es que se dispare cuando el control obtiene el foco el evento correspondiente es: Enter

Saludos y espero que esta sea la respuesta a tu duda.


Gracias tu respuesta es exacta.


La zona horaria es GMT -6. Ahora son las 19:13.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.