Scopo
Attiva un nodo dell'albero identificandolo tramite l'HashKey. E' possibile specificare se occorre eseguire tutte le query richieste finché non si trova il nodo e se, al termine della procedura, occorra chiudere tutti i nodi lasciando aperti solo quelli che permettono di navigare fino al nodo attivato.
Sintassi
// Aggiorno l'albero
Albero.ActivateNode(hashkey, cerca nodo, espandi solo attivato)
Albero.ActivateNode(hashkey, cerca nodo, espandi solo attivato)
Argomenti
Hash Key | E' una stringa che identifica il nodo che occorre attivare. Per sapere cosa è un HashKey puoi leggere il paragrafo "Identificazione dei nodi: la proprietà HashKey" dell'articolo Nodi dell'albero. |
Cerca Nodo | E' un valore booleano opzionale che indica se occorre espandere nodi mai espansi (e quindi eseguire le relative query per caricare i nuovi figli) finché non viene trovato il nodo richiesto. Il valore di default è False. |
Espandi Solo Attivato | E' un valore booleano opzionale che indica se occorre mantenere lo stato di espansione e chiusura dei nodi dopo aver attivato il nodo richiesto. Il valore di default è True. |
Esempio di codice
// ***********************
// Attiva il nodo corrente
// ***********************
public void AlberoCategorie.AttivaNodo()
{
// Se il nodo non è già quello attivo...
if Categorie.GetActiveNode() <> CAT +c ToString(Categorie.ID)
{
Categorie.ActivateNode(CAT +c ToString(Categorie.ID), True, True)
}
}
// Attiva il nodo corrente
// ***********************
public void AlberoCategorie.AttivaNodo()
{
// Se il nodo non è già quello attivo...
if Categorie.GetActiveNode() <> CAT +c ToString(Categorie.ID)
{
Categorie.ActivateNode(CAT +c ToString(Categorie.ID), True, True)
}
}
- L'operazione di attivazione del nodo coincide con il click sul nodo stesso. Il sistema notifica l'evento OnActivateNode e se il parametro Cancel non viene impostato a True ed il nodo possiede un proprio oggetto di attivazione il sistema lo avvia.
- Se il parametro Cerca Nodo è True il sistema apre, uno alla volta, tutti i nodi alla ricerca del nodo da attivare. Se un nodo non è mai stato espanso viene eseguita la relativa query per poter cercare tra i suoi figli. Se il parametro Cerca Nodo è False il sistema apre solo i nodi che sono già stati aperti precedentemente senza eseguire nessuna nuova query. In quest'ultimo caso potrebbe capitare che il nodo non venga trovato poiché potrebbe non essere ancora stato caricato.
- Se il parametro Espandi Solo Attivato è False al termine della procedura l'albero risulterà parzialmente espanso poiché la procedura apre i nodi finchè non viene trovato il nodo da attivare.
- Se il parametro Espandi Solo Attivato è True la procedura ripristina lo stato di espansione originale. Poi, partendo dal nodo da attivare, espande tutti i nodi padre risalendo fino alla radice dell'abero.
- In caso di Applicazione Mobile il parametro EspandiSoloAttivato è sempre True; inoltre i nodi non appartenenti al ramo attivato vengono sempre espansi.
Ultima modifica: 23/03/2021 / Validità: da 6.5.2680