Treeview e form

giovedì 23 febbraio 2006 - 11.09

alecomo Profilo | Junior Member

ciao a tutti...

ho una treeview avente root(manifest)e dei child tutti dello stesso livello e con lo stesso nome(organization)

i nodi figli organization sono delle classi che ereditano le proprieta base dalla classe treenode con in piu delle proprieta mie

cliccando con il destro sui nodi figli posso far apparire una form che mi permette di modificare e salvare le proprieta del nodo...

il mio problema è che quando faccio apparire la form, appare sempre la stessa per tutti i nodi e se memorizzo una proprieta questa viene salvata per tutti i nodi...non solo per quello corrente...io vorrei invece che per ogni nodo ci sia una form distinta che memorizzi le proprieta di quel nodo...

cosa posso fare?spero possiate aiutarmi

Cteniza Profilo | Guru

Mi sembrava che in un thread precedente avessimo già dibattuto questa cosa!.
Ricapitolo:
Sulla classe che eredita da treenode:
private MyNodeForm mNodeForm = null; // definito come la form
public MyNodeForm NodeForm
{
get { return mNodeForm; }
set { mNodeForm = value;}
}

poi dove devi richiamare la form "privata"
MyNodeForm frm;
if (myNode.NodeForm == null)
{
frm = new MyNodeForm();
myNode.MyNodeForm = frm;
}
frm = myNode.MyNodeForm;
frm.Show();

alecomo Profilo | Junior Member

si è vero...ma con scarsi risultati...
il programma si blocca quando tento di aprire la form per la seconda volta...
sulla riga frm = myNode.myNodeForm...perchè??
e poi non dovrebbe essere frm = myNode.NodeForm anzichè frm = myNode.myNodeForm?
come hai scritto tu è impossibile da inserire
non riesco a risolvere...
ti prego aiutami..
grazie

Cteniza Profilo | Guru

Devi renderti conto che scrivendo direttamente nel messaggio è possibile che siano introdotti degli errori.

alecomo Profilo | Junior Member

si ok non c'è problema...ci mancherebbe altro...
ma non sai dirmi come mai si blocca quando apro la form per la seconda volta?
grazie e scusa

Cteniza Profilo | Guru

Prova a zippare un tuo progetto che riproduce la situazione.

alecomo Profilo | Junior Member

ecco il lavoro...
ti ringrazio infinitamente

Cteniza Profilo | Guru

Io non ti chiedevo l'intero progetto "reale" ma solo un progetto "zen" in cui riprodurre le cose che vuoi testare da sole.
Mettere un progetto troppo complesso comporta che diventa molto difficile trovare gli errori e che nel forum sicuramente nessuno ti aiuterà.
Detto questo prova il progetto allegato (non è il tuo! ma uno di esempio) e verifica se fa quello che desideri (per far comparire la form con i dati del nodo devi fare doppio click su un nodo qualsiasi).
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5