CLR: .Net / Mono / Boo / Otros CLR > C#
Como insertar otro Form en un control panel??...
juancho1985df:
Hola a todos, les comento mi duda ya que hace rato ando buscando una solución por todos lados pero no la eh encontrado, estoy haciendo un proyecto aplicación para windows en visual studio con c #, lo que hago es abrir mi form2 (Lista de clientes) en un panel que se encuentra en el form principal con el siguiente codigo:
Form2 form2 = new Form2();
form2.TopLevel = false;
form2.Parent = panel1;
form2.Show();
form2.BringToFront();
hasta ahí todo bien pero cuando quiero abrir el form Cliente (en el mismo panel) haciendo click en un botón del form2 (lista de clientes) no me aparece nada en el panel del form principal, el código con el que intento mostrarlo es este:
Menu me=new Menu(); //form principal que contiene el panel
.
.
Cliente clie = new Cliente();
clie.TopLevel = false;
clie.Parent = me.panel1;
clie.Show();
clie.BringToFront();
espero que puedan ayudarme ya que recién me estoy iniciando , desde ya muchas gracias , saludos!!
pedroqv:
Nose si te estoy entendiendo bien, pero lo que logro captar es que quieres mostrar varias pantallas en una sola ventana.
Si es asi, eso yo lo hago colocando un panel en la ventana principal y agrego controles de usuario, donde cada control de usuario va hacer cada una de las pantallas.
El codigo para mostrar un control de usuario sobre el panel:
panel1.Clear(); //limpio el panel por si llega haber otro componente sobre este.
controlUsuario1 cu1 = new ControlUsuario1(); //Creo una instancia del controlUsuario1.
panel1.Controls.Add(cu1); //Agrego la instancia al panel y listo.
NOTA: Te recomiendo que pongas del mismo tamaño o menor el control de usuario con respecto a la ventana principal (windows form).
Nose si esto querias hacer, pero si estoy entendido te lo puedo explicar mejor.
juancho1985df:
Hola pedroqv! claro osea tengo un form llamado Menu el cual contiene un panel1 y un botón que haciendo click en él, se abre dentro del panel1 un form llamado ListadeCliente, hasta ahi todo bien pero después el form ListadeCliente tiene un botón que al hacer click se abre otro form llamado Cliente este ultimo también quiero que se abra dentro del panel1 del form Menu, pero todavía no logro hacer esto,,,,,,,,,voy a poner a leer un poco sobre "control de usuario" ya que nunca he utilizado uno, una pregunta: ¿dentro de un control de usuario se puede poner un form completo?, gracias por tu respuesta y espero poder solucionar este problemilla, saludos!!!
pedroqv:
Para agregar un control de usuario (users control) se hace click derecho sobre el proyecto en el menu "explorador de soluciones" ahi seleccionas agregar/control de usuario o tambien agregar/nuevo elemento/control de usuario.
Una vez que lo agregas, abre el control de usuario y te daras cuenta que se parece a un windows form con la unica diferencia que este no tiene marco de ventana, solamente tiene el area donde pondras los componentes.
Y asi puedes agregar cuantos controles de usuario necesites, pon atencion al nombre que le pones porque lo ocuparas para llamarlo desde el windows form.
Abres el windows form que fue el primero que se creo al crear tu proyecto ahi pones tu panel1, y tus 2 botones donde cada boton va poner uno de los control de usuario sobre tu panel1. Les das doble click a los botones para que se genere el evento de cuando uno hace click sobre el boton y ahi es donde creas la instancia de control de usuario y lo agregas al panel.
en el primer boton seria:
panel1.Clear(); //para asegurarte de que el panel este vacio
ControlUsuario1 cu1 = new ControlUsuario1(); //creas una instancia del primer control de usuario
panel1.Controls.Add(cu1); //Agregas al panel y desde este momento tu control de usuario ya estara sobre tu panel.
para el segundo boton es:
panel1.Clear(); //para asegurarte de que el panel este vacio
ControlUsuario2 cu2 = new ControlUsuario2(); //creas una instancia del primer control de usuario
panel1.Controls.Add(cu2); //Agregas al panel y desde este momento tu control de usuario ya estara sobre tu panel.
Generalmente el tamaño del panel y los controles de usuario deben tener el mismo tamaño.
Yo habia publicado este problema, para la otra primero mejor revisa el foro... ahi te va mi publicacion:
foros.solocodigo.com/viewtopic.php?f=50&t=41443&p=150290&hilit=barajear#p150290
:alien: :alien: :alien:
juancho1985df:
Muchas Gracias perdroqv por tu respuesta, mas luego me pondré a pobrar con estos controles de usuarios aunque creo que se me va complicar un poquito ya que a los forms los tengo implementados, asique los tendré que migrar a cada uno a un control de usuario, veré que sale y te estaré comentando que tal me va, saludos!!!
Navegación
[#] Página Siguiente
Ir a la versión completa