Condividi tramite


TreeNodeCollection Classe

Definizione

Rappresenta una raccolta di oggetti TreeNode nel controllo TreeView . La classe non può essere ereditata.

public ref class TreeNodeCollection sealed : System::Collections::ICollection, System::Web::UI::IStateManager
public sealed class TreeNodeCollection : System.Collections.ICollection, System.Web.UI.IStateManager
type TreeNodeCollection = class
    interface ICollection
    interface IEnumerable
    interface IStateManager
Public NotInheritable Class TreeNodeCollection
Implements ICollection, IStateManager
Ereditarietà
TreeNodeCollection
Implementazioni

Esempio

Nell'esempio seguente viene illustrato come aggiungere a livello di codice i nodi a e rimuoverli da un TreeNodeCollectionoggetto . Si noti che le Nodes proprietà e ChildNodes restituiscono un TreeNodeCollection oggetto.


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {

    if (!IsPostBack)
    {

      // Use the Add and Remove methods to programmatically 
      // remove the Appendix C node and replace it with a new 
      // node. 
      LinksTreeView.Nodes.Remove(LinksTreeView.Nodes[3]);
      LinksTreeView.Nodes.Add(new TreeNode("New Appendix C"));

      // Use the AddAt and RemoveAt methods to programmatically 
      // remove the Chapter One node and replace it with a new node.
      LinksTreeView.Nodes[0].ChildNodes.RemoveAt(0);
      LinksTreeView.Nodes[0].ChildNodes.AddAt(0, new TreeNode("New Chapter One"));

      // Use the Clear method to remove all the child nodes of the 
      // Chapter Two node.
      LinksTreeView.Nodes[0].ChildNodes[1].ChildNodes.Clear();

    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeNodeCollection Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeNodeCollection Example</h3>
    
      <asp:TreeView id="LinksTreeView"
        Font-Names= "Arial"
        ForeColor="Blue"
        runat="server">
         
        <LevelStyles>
        
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Bold="true" 
            Font-Size="12pt" 
            ForeColor="DarkGreen"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-Bold="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-UnderLine="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Size="8pt"/>
             
        </LevelStyles>
         
        <Nodes>
        
          <asp:TreeNode Text="Table of Contents"
            Expanded="true">
             
            <asp:TreeNode Text="Chapter One">
            
              <asp:TreeNode Text="Section 1.0">
              
                <asp:TreeNode Text="Topic 1.0.1"/>
                <asp:TreeNode Text="Topic 1.0.2"/>
                <asp:TreeNode Text="Topic 1.0.3"/>
              
              </asp:TreeNode>
              
              <asp:TreeNode Text="Section 1.1">
              
                <asp:TreeNode Text="Topic 1.1.1"/>
                <asp:TreeNode Text="Topic 1.1.2"/>
                <asp:TreeNode Text="Topic 1.1.3"/>
                <asp:TreeNode Text="Topic 1.1.4"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
            <asp:TreeNode Text="Chapter Two">
            
              <asp:TreeNode Text="Section 2.0">
              
                <asp:TreeNode Text="Topic 2.0.1"/>
                <asp:TreeNode Text="Topic 2.0.2"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
          </asp:TreeNode>
          
          <asp:TreeNode Text="Appendix A" />
          <asp:TreeNode Text="Appendix B" />
          <asp:TreeNode Text="Appendix C" />
        
        </Nodes>
        
      </asp:TreeView>

    </form>
  </body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

    If Not IsPostBack Then

      ' Use the Add and Remove methods to programmatically 
      ' remove the Appendix C node and replace it with a new 
      ' node. 
      LinksTreeView.Nodes.Remove(LinksTreeView.Nodes(3))
      LinksTreeView.Nodes.Add(New TreeNode("New Appendix C"))

      ' Use the AddAt and RemoveAt methods to programmatically 
      ' remove the Chapter One node and replace it with a new node.
      LinksTreeView.Nodes(0).ChildNodes.RemoveAt(0)
      LinksTreeView.Nodes(0).ChildNodes.AddAt(0, New TreeNode("New Chapter One"))

      ' Use the Clear method to remove all the child nodes of the 
      ' Chapter Two node.
      LinksTreeView.Nodes(0).ChildNodes(1).ChildNodes.Clear()

    End If

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeNodeCollection Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeNodeCollection Example</h3>
    
      <asp:TreeView id="LinksTreeView"
        Font-Names= "Arial"
        ForeColor="Blue"
        runat="server">
         
        <LevelStyles>
        
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Bold="true" 
            Font-Size="12pt" 
            ForeColor="DarkGreen"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-Bold="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="5" 
            Font-UnderLine="true" 
            Font-Size="10pt"/>
          <asp:TreeNodeStyle ChildNodesPadding="10" 
            Font-Size="8pt"/>
             
        </LevelStyles>
         
        <Nodes>
        
          <asp:TreeNode Text="Table of Contents"
            Expanded="true">
             
            <asp:TreeNode Text="Chapter One">
            
              <asp:TreeNode Text="Section 1.0">
              
                <asp:TreeNode Text="Topic 1.0.1"/>
                <asp:TreeNode Text="Topic 1.0.2"/>
                <asp:TreeNode Text="Topic 1.0.3"/>
              
              </asp:TreeNode>
              
              <asp:TreeNode Text="Section 1.1">
              
                <asp:TreeNode Text="Topic 1.1.1"/>
                <asp:TreeNode Text="Topic 1.1.2"/>
                <asp:TreeNode Text="Topic 1.1.3"/>
                <asp:TreeNode Text="Topic 1.1.4"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
            <asp:TreeNode Text="Chapter Two">
            
              <asp:TreeNode Text="Section 2.0">
              
                <asp:TreeNode Text="Topic 2.0.1"/>
                <asp:TreeNode Text="Topic 2.0.2"/>
              
              </asp:TreeNode>
            
            </asp:TreeNode>
            
          </asp:TreeNode>
          
          <asp:TreeNode Text="Appendix A" />
          <asp:TreeNode Text="Appendix B" />
          <asp:TreeNode Text="Appendix C" />
        
        </Nodes>
        
      </asp:TreeView>

    </form>
  </body>
</html>

Commenti

La TreeNodeCollection classe viene usata per archiviare e gestire una raccolta di TreeNode oggetti nel TreeView controllo. Il TreeView controllo usa la TreeNodeCollection classe in due delle relative proprietà. Archivia i nodi radice nella Nodes proprietà e i relativi nodi selezionati nella CheckedNodes proprietà. La TreeNodeCollection raccolta viene usata anche per la ChildNodes proprietà per archiviare i nodi figlio (se presente).

La TreeNodeCollection classe supporta diversi modi per accedere agli elementi della raccolta:

  • Usare l'indicizzatore Item[] per recuperare un oggetto direttamente in corrispondenza di un TreeNode indice in base zero specifico.

  • Usare il GetEnumerator metodo per creare un enumeratore che può essere usato per scorrere la raccolta.

  • Usare foreach (C#) o For Each (Visual Basic) per scorrere la raccolta.

  • Utilizzare il CopyTo metodo per copiare il contenuto della raccolta in un Array oggetto.

È possibile gestire a livello di codice l'aggiunta TreeNodeCollection e la rimozione TreeNode di oggetti. Per aggiungere nodi alla raccolta, usare il Add metodo o AddAt . Per rimuovere i nodi dalla raccolta, usare il Removemetodo , RemoveAto Clear .

Nota

Quando il controllo è associato a un'origine dati, le raccolte e ChildNodes vengono popolate automaticamente ogni volta che Nodes si verifica l'associazioneTreeView. Tutte le modifiche apportate alle raccolte tra associazioni verranno perse. Per conservare queste modifiche, aggiornare l'origine dati o ricompilare manualmente la raccolta ogni volta che si esegue l'associazione.

Contiene TreeNodeCollection proprietà e metodi che consentono di recuperare informazioni sulla raccolta stessa. Per scoprire quanti elementi si trovano nella raccolta, usare la Count proprietà . Se si vuole determinare se l'insieme contiene un determinato TreeNode oggetto, usare il Contains metodo . Per ottenere l'indice di un TreeNode oggetto nell'insieme, usare il IndexOf metodo .

Costruttori

TreeNodeCollection()

Inizializza una nuova istanza della classe TreeNodeCollection usando i valori predefiniti.

TreeNodeCollection(TreeNode)

Inizializza una nuova istanza della classe TreeNodeCollection utilizzando il nodo padre, o proprietario, specificato.

Proprietà

Count

Ottiene il numero di elementi nell'oggetto TreeNodeCollection.

IsSynchronized

Ottiene un valore che indica se l'accesso a TreeNodeCollection è sincronizzato (thread-safe).

Item[Int32]

Ottiene l'oggetto TreeNode in corrispondenza dell'indice specificato nell'oggetto TreeNodeCollection.

SyncRoot

Ottiene un oggetto che può essere usato per sincronizzare l'accesso all'oggetto TreeNodeCollection.

Metodi

Add(TreeNode)

Aggiunge l'oggetto TreeNode specificato alla fine dell'oggetto TreeNodeCollection.

AddAt(Int32, TreeNode)

Inserisce nell'oggetto TreeNode corrente in corrispondenza della posizione di indice specificata l'oggetto TreeNodeCollection specificato.

Clear()

Svuota l'oggetto TreeNodeCollection.

Contains(TreeNode)

Determina se l'oggetto TreeNode specificato è incluso nell'insieme.

CopyTo(TreeNode[], Int32)

Copia tutti gli elementi dall'oggetto TreeNodeCollection a una matrice unidimensionale compatibile di oggetti TreeNode, a partire dall'indice specificato nella matrice di destinazione.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetEnumerator()

Restituisce un enumeratore che può essere utilizzato per scorrere un oggetto TreeNodeCollection.

GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IndexOf(TreeNode)

Determina l'indice dell'oggetto TreeNode specificato.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
Remove(TreeNode)

Rimuove dall'oggetto TreeNode l'oggetto TreeNodeCollection specificato.

RemoveAt(Int32)

Rimuove dall'oggetto TreeNode l'oggetto TreeNodeCollection in corrispondenza della posizione di indice specificata.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

ICollection.CopyTo(Array, Int32)

Copia tutti gli elementi dall'oggetto TreeNodeCollection a una matrice unidimensionale compatibile Array, a partire dall'indice specificato nella matrice di destinazione.

IStateManager.IsTrackingViewState

Ottiene un valore che indica se l'oggetto TreeNodeCollection sta salvando le modifiche apportate al relativo stato di visualizzazione.

IStateManager.LoadViewState(Object)

Carica lo stato di visualizzazione precedentemente salvato dell'oggetto TreeNodeCollection.

IStateManager.SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione in un oggetto Object.

IStateManager.TrackViewState()

Indica all'oggetto TreeNodeCollection di tenere traccia delle modifiche apportate allo stato di visualizzazione.

Metodi di estensione

Cast<TResult>(IEnumerable)

Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato.

OfType<TResult>(IEnumerable)

Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato.

AsParallel(IEnumerable)

Consente la parallelizzazione di una query.

AsQueryable(IEnumerable)

Converte un oggetto IEnumerable in un oggetto IQueryable.

Si applica a

Vedi anche