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

Llamar a un método de un form desde otro form

Estas en el tema de Llamar a un método de un form desde otro form en el foro de .NET en Foros del Web. Buenas, tengo un form con un menú, y al hacer click en abrir del menú Archivo se abre un form. Ahora tengo otro form con ...
  #1 (permalink)  
Antiguo 24/08/2010, 21:17
 
Fecha de Ingreso: agosto-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 0
Información Llamar a un método de un form desde otro form

Buenas, tengo un form con un menú, y al hacer click en abrir del menú Archivo se abre un form. Ahora tengo otro form con un botón en el que quiero que al hacer click sobre el botón se abra el mismo form que al hacer click en abrir del menú archivo, es decir, ¿Cómo hago para que al hacer click en el botón se ejecute el método _Click del menú abrir?
Lo que necesito es que pase lo mismo al hacer click tanto en el botón como en el menú.

Gracias!
  #2 (permalink)  
Antiguo 25/08/2010, 05:55
 
Fecha de Ingreso: junio-2008
Ubicación: Valencia
Mensajes: 152
Antigüedad: 15 años, 10 meses
Puntos: 3
Respuesta: Llamar a un método de un form desde otro form

He encontrado esto :
http://www.lawebdelprogramador.com/n...n8=0&n9=0&n0=0

Espero te sirva.
  #3 (permalink)  
Antiguo 25/08/2010, 07:52
 
Fecha de Ingreso: agosto-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Llamar a un método de un form desde otro form

Gracias Kyha

no he podido seguir muy bien ese post, pues hablan en VB y yo estoy programando con C#.

De todas formas lo conseguí, aunq no sé si es muy eficiente, aunq funcionar funciona. Pongo como lo he hecho pero en un ejemplo más sencillo con la misma dinámica para que podais opinar.

Tengo dos form, Form1 y Form2:

----------------------------------------------------------------------------------------------------
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Form2 form2 = new Form2(this);
form2.Show();
}

public void btnHola_Click(object sender, EventArgs e)
{
MessageBox.Show("Hola!!!");
}
}
}
-------------------------------------------------------------------------------------------------

y el Form2:
--------------------------------------------------------------------------------------------------
namespace WindowsFormsApplication1
{
public partial class Form2 : Form
{
Form1 form1;

public Form2(Form1 form1)
{
InitializeComponent();
this.form1 = form1;
}

private void btnHola2_Click(object sender, EventArgs e)
{
(*) form1.btnHola.PerformClick();
}
}
}
---------------------------------------------------------------------------------------------

Digamos que este es el ejemplo simplificado de lo que yo estoy haciendo.
Yo tengo un formParent abierto (aquí sería Form1), pero antes se abre un form (aquí sería Form2) en el que puedo elegir un formChild, entonces al darle al botón del Form2 se debe crear un formChild del Fom1 llamando a un evento que tiene el FormPadre en el menu Abrir-->Nuevo.

Es un poco lioso pero creo que no es dificil de entender.

(*)Aqui, he leido en otros post que pone:
form1.btnHola.btnHola_Click(this, null); o...... form1.btnHola_Click(this, this);

lo he probado y tambien funciona.

¿Alguna opinión?

Gracias!.
  #4 (permalink)  
Antiguo 29/08/2010, 13:28
 
Fecha de Ingreso: agosto-2007
Mensajes: 106
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Llamar a un método de un form desde otro form

yo me lo guiso, yo me lo como

Etiquetas: llamar, formulario
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 19:24.