He visto algunos hilos diferentes y he tratado de encontrar la respuesta correcta, ninguno ha funcionado. Estoy tratando de ocultar el formulario actual . Sé cómo hacerlo, pero cuando hago ProjectName.Form2.Visible () me da un error y dice que solo use Visible () , desafortunadamente, eso hace que Form1 visible.

0
Exvient 15 sep. 2018 a las 21:45

3 respuestas

La mejor respuesta

En realidad, el formulario no tiene un método Visible(), y tiene una propiedad booleana Visible y un método Show():

Y tenga en cuenta que primero debe crear una instancia de Form2, y luego llamar a su método Show(), o establecer su propiedad Visible en true.

Form2 frm = new Form2();
frm.Visible = true;  // or frm.Show();
2
Ashkan Mobayen Khiabani 15 sep. 2018 a las 19:05

Debería crear una nueva instancia del formulario y llamar a .Visible() en esa instancia.

var newForm = new ProjectName.Form2();
newForm.Visible();

Cuando llama a ProjectName.Form2.Visible(), busca un método estático en la clase llamada Visible que no existe.

0
David Pilkington 15 sep. 2018 a las 18:55

No olvide mostrar el formulario después de la creación de instancias:

Form2 f2 = new Form2();
f2.Show();
Visible = false;

Francamente, no estoy seguro de si los formularios se pueden mostrar sin ejecutar ese método o no, así es como siempre lo he hecho. Además, como Ashkan menciona anteriormente, Show es un método, mientras que Visible es una propiedad bool.

0
Miles Possing 15 sep. 2018 a las 19:07