Saber si ya existen objetos de una clase creada para no crear mas

13/02/2005 - 13:23 por Hans Castorp | Informe spam
La situación es la siguiente:

1.- Pincho en un nodo del arbol y esto me crea un form.
2.- Pincho en otro nodo y en principio me crearía otro.
Todos estos forms están contenidos en un MDI form.
Cuando vuelvo a pinchar en el primero me gustaría que me mostrase el form
que ya tengo creado y no que me cree otro más.

¿Como puedo controlar esto?. La primera vez quiero que me lo cree pero la
segunda quiero que vuelva al que ya tengo creado.

Gracias

Preguntas similare

Leer las respuestas

#6 Alfredo Novoa
13/02/2005 - 21:11 | Informe spam
On Sun, 13 Feb 2005 11:51:03 -0800, Hans Castorp
wrote:

Hola de nuevo,

He probado con el siguiente código pero me sigue creando los formularios
cada vez que pincho en el nodo del tree:

if(treeView1.Tag==null){
if (treeView1.SelectedNode.Text=="Mantenimientos")
{
Form2 newMDIChild = new Form2();
// Set the Parent Form of the Child window.
newMDIChild.MdiParent = this;
// Display the new form.
newMDIChild.Show();
}
}

Que hago mal?



Estás usando el "Tag" del TreeView en lugar del Tag del TreeNode.

Deberías de hacer algo así:

private void treeView_AfterSelect(object sender, TreeViewEventArgs e)
{
TreeView treeView = (TreeView)sender;

TreeNode treeNode = treeView.SelectedNode;

if(treeNode.Tag == null)
if (treeNode.Text == "Mantenimientos")
{
Form2 newMDIChild = new Form2();
treeNode.Tag = newMDIChild;
newMDIChild.MdiParent = this;
newMDIChild.Show();
}
}

Saludos
Respuesta Responder a este mensaje
#7 Hans Castorp
13/02/2005 - 21:47 | Informe spam
Muchas gracias, esto si q funciona...

"Alfredo Novoa" wrote:

On Sun, 13 Feb 2005 11:51:03 -0800, Hans Castorp
wrote:

>Hola de nuevo,
>
>He probado con el siguiente código pero me sigue creando los formularios
>cada vez que pincho en el nodo del tree:
>
>if(treeView1.Tag==null){
> if (treeView1.SelectedNode.Text=="Mantenimientos")
> {
> Form2 newMDIChild = new Form2();
> // Set the Parent Form of the Child window.
> newMDIChild.MdiParent = this;
> // Display the new form.
> newMDIChild.Show();
> }
> }
>
>Que hago mal?

Estás usando el "Tag" del TreeView en lugar del Tag del TreeNode.

Deberías de hacer algo así:

private void treeView_AfterSelect(object sender, TreeViewEventArgs e)
{
TreeView treeView = (TreeView)sender;

TreeNode treeNode = treeView.SelectedNode;

if(treeNode.Tag == null)
if (treeNode.Text == "Mantenimientos")
{
Form2 newMDIChild = new Form2();
treeNode.Tag = newMDIChild;
newMDIChild.MdiParent = this;
newMDIChild.Show();
}
}

Saludos

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida