Foros del Web » Programación para mayores de 30 ;) » .NET »

Llamar evento Click por código

Estas en el tema de Llamar evento Click por código en el foro de .NET en Foros del Web. ¡Hola a todos! Trabajo en Visual Basic 2008 Express con un proyecto convertido en .NET desde Visual Basic 5. Tiene un Array de botones, que ...
  #1 (permalink)  
Antiguo 14/07/2010, 14:04
 
Fecha de Ingreso: septiembre-2003
Ubicación: Argentina
Mensajes: 145
Antigüedad: 20 años, 7 meses
Puntos: 0
Llamar evento Click por código

¡Hola a todos!

Trabajo en Visual Basic 2008 Express con un proyecto convertido en .NET desde Visual Basic 5. Tiene un Array de botones, que como es sabido, es transformado a .NET desde un "artilugio" de código para manejar el array ya que no es tan fácil el array de controles en .NET como era en VB5. El tema es que quiero llamar el código del evento del botón desde otro procedimiento, pero no se como especificar el index que debe ser como si realmente se presionara el botón. ¿Cómo puedo especificar el index al llamar evento por código? ¡Gracias de antemano!

Saludos

Diego

Última edición por diegoc; 14/07/2010 a las 14:09
  #2 (permalink)  
Antiguo 17/07/2010, 18:02
Avatar de gedarufi  
Fecha de Ingreso: diciembre-2008
Ubicación: Colombia
Mensajes: 540
Antigüedad: 15 años, 4 meses
Puntos: 22
Respuesta: Llamar evento Click por código

No se exactamente como te quedo el código pero yo lo que haría es enviarle el control en el sender del evento.

Saludos
  #3 (permalink)  
Antiguo 19/07/2010, 06:56
 
Fecha de Ingreso: septiembre-2003
Ubicación: Argentina
Mensajes: 145
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Llamar evento Click por código

¡Hola a Todos!

¡Gracias por responder gedarufi!

Mas o menos eso es lo que hice. Te paso el código que tengo:

Private Sub BotonNumeroTanto_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles BotonNumeroTanto.Click
Dim Index As Short = BotonNumeroTanto.GetIndex(eventSender)

Lo llamo por:

BotonNumeroTanto_Click(1, Nothing)

Cuando lo ejecuto, en la sentencia del Dim del evento me dice que no se puede convertir un objeto del tipo System.int32 a System.Windows.Forms.Button

¡Gracias de antemano!

Saludos

Diego
  #4 (permalink)  
Antiguo 19/07/2010, 08:49
Avatar de gedarufi  
Fecha de Ingreso: diciembre-2008
Ubicación: Colombia
Mensajes: 540
Antigüedad: 15 años, 4 meses
Puntos: 22
Respuesta: Llamar evento Click por código

Lo que pasa es que cuando se ejecute el evento directamente (osea cuando se pulse el botón en la GUI) lo que se va a enviar en el parámetro sender es el botón desde el cual se esta disparando el evento (a eso se debe tu error), lo que puedes hacer es utilizar la propiedad TAG de los controles para tener esa información adicional o puedes utilizar el Find del IList para ubicar el control.

Saludos
  #5 (permalink)  
Antiguo 19/07/2010, 08:55
 
Fecha de Ingreso: septiembre-2003
Ubicación: Argentina
Mensajes: 145
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Llamar evento Click por código

¡Hola a Todos!

¡Gracias por responder gedarufi!

Mas o menos entiendo, pero no se como codificar lo que dices. ¿Puedes indicar el código que debo colocar?

¡Gracias de antemano!

Saludos

Diego
  #6 (permalink)  
Antiguo 19/07/2010, 09:23
Avatar de gedarufi  
Fecha de Ingreso: diciembre-2008
Ubicación: Colombia
Mensajes: 540
Antigüedad: 15 años, 4 meses
Puntos: 22
Respuesta: Llamar evento Click por código

Lo que debes de hacer simplemente es identificar el botón que quieres que genere el evento y al momento de llamarlo debes de hacerlo de la siguiente manera
Código C#:
Ver original
  1. BotonNumeroTanto_Click(Button, Nothing)
Donde Button es el boton desde el cual se genera el evento
  #7 (permalink)  
Antiguo 19/07/2010, 11:23
 
Fecha de Ingreso: septiembre-2003
Ubicación: Argentina
Mensajes: 145
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Llamar evento Click por código

¡Hola a Todos!

¡Gracias por responder gedarufi!

¡Perfecto! Me fijé en el Windows Form Designer generated code el nombre del botón y anduvo de diez.

¡Gracias mil!

Saludos

Diego

Etiquetas: llamar, eventos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:25.