blackpanzer Posted February 20, 2012 Report Share Posted February 20, 2012 Hola a Todos Tengo el siguiente problema Estoy practicando en c# y desde un form tengo un button donde abre otro formpero el nuevo form no me muestra nada..... es decir que el nuevo form me aparece pero no me muestra nada de lo que le he agregado a este(buttons, textbox, label, etc)... solo me aparece el nuevo form vació y seria. El código que puse para que me mostrara el nuevo form es el siguiente Form Muestra; Muestra = new Form(); Muestra.Show(); Si alguien me pudiera ayudar seria perfect..... Link to comment Share on other sites More sharing options...
AshWilliams Posted February 21, 2012 Report Share Posted February 21, 2012 Proyecto....Agregar Formulario..... y para mostrarlo, pues, nombredelformulario.Show(); Saludos :krider: Link to comment Share on other sites More sharing options...
susodicho Posted February 25, 2012 Report Share Posted February 25, 2012 (edited) Si estás usando este código para mostrar el formulario... Form Muestra; Muestra = new Form(); Muestra.Show(); ...entonces obtienes un formulario vacío, porque eso es lo que hace el contructor de la clase Form.Si agregaste el formulario de forma correcta a tu proyecto, entonces tienes que crear una instancia usando el nombre de la clase de tu formulario. Los formularios que creas en .NET derivan de la clase Form, o sea, heredan los miembros de la clase Form, pero son de otra clase. Cada formulario que agregas es una clase nueva derivada de la clase Form. Si dejas los nombres por defecto que asigna Visual Studio, entonces el formulario principal de tu proyecto pertenece a la clase Form1 y el otro formulario que agregaste sería de la clase Form2. Por lo tanto, para mostrar el otro formulario tendrías que usar: Form2 muestra = new Form2(); muestra.ShowDialog(); muestra.Dispose(); ó Form2 muestra = new Form2(); muestra.Show(); muestra.Close(); Obviamente, si le cambiaste el nombre al formulario, tienes que cambiar el nombre de la clase. Cuando agregas un formulario a un proyecto en Visual Studio, el formulario se guarda en un archivo con el nombre que le asignaste en el cuadro de diálogo correspondiente, y dentro de este archivo se define una clase pública con el mismo nombre del archivo. Es decir, si mantuviste los nombres por defecto: El formulario principal estaría en un archivo llamado Form1.cs y en él se define una clase Form1 que deriva de Form. El formulario que agregaste después estaría en un archivo llamado Form2.cs y en él se define una clase Form2 que deriva de Form. O sea, normalmente vas a ver algo como esto en el código fuente de tus formularios: public partial class Form1 : Form { public Form1() { InitializeComponent(); } // etc. } Así que usando el constructor del formulario (y no el de la clase Form :no: ) se incluirán todos los controles que tú agregaste con el diseñador de Visual Studio. Edited February 25, 2012 by susodicho Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now