TreeNodeCollection Class

Definition

Rappresenta una raccolta di oggetti TreeNode nel controllo TreeView.Represents a collection of TreeNode objects in the TreeView control. Questa classe non può essere ereditata.This class cannot be inherited.

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
Inheritance
TreeNodeCollection
Implements

Examples

Nell'esempio seguente viene illustrato come aggiungere e rimuovere nodi a livello di codice da un TreeNodeCollection.The following example demonstrates how to programmatically add nodes to and remove them from a TreeNodeCollection. Si noti che le proprietà Nodes e ChildNodes restituiscono un oggetto TreeNodeCollection.Notice that the Nodes and ChildNodes properties return a TreeNodeCollection object.


<%@ 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>

Remarks

La classe TreeNodeCollection viene utilizzata per archiviare e gestire una raccolta di oggetti TreeNode nel controllo TreeView.The TreeNodeCollection class is used to store and manage a collection of TreeNode objects in the TreeView control. Il controllo TreeView usa la classe TreeNodeCollection in due proprietà.The TreeView control uses the TreeNodeCollection class in two of its properties. Archivia i nodi radice nella proprietà Nodes e i nodi selezionati nella proprietà CheckedNodes.It stores its root nodes in the Nodes property and its selected nodes in the CheckedNodes property. La raccolta di TreeNodeCollection viene utilizzata anche per la proprietà ChildNodes per archiviare i nodi figlio (se presenti).The TreeNodeCollection collection is also used for the ChildNodes property to store child nodes (if any).

La classe TreeNodeCollection supporta diversi modi per accedere agli elementi della raccolta:The TreeNodeCollection class supports several ways to access the items in the collection:

  • Usare l'indicizzatore Item[] per recuperare direttamente un oggetto TreeNode in corrispondenza di un indice in base zero specifico.Use the Item[] indexer to retrieve a TreeNode object directly at a specific zero-based index.

  • Usare il metodo GetEnumerator per creare un enumeratore che può essere usato per scorrere la raccolta.Use the GetEnumerator method to create an enumerator that can be used to iterate through the collection.

  • Usare foreach (C#) o For Each (Visual Basic) per scorrere la raccolta.Use foreach (C#) or For Each (Visual Basic) to iterate through the collection.

  • Usare il metodo CopyTo per copiare il contenuto della raccolta in un oggetto Array.Use the CopyTo method to copy the contents of the collection into an Array object.

È possibile gestire il TreeNodeCollection a livello di codice tramite l'aggiunta e la rimozione di oggetti TreeNode.You can programmatically manage the TreeNodeCollection by adding and removing TreeNode objects. Per aggiungere nodi alla raccolta, usare il metodo Add o AddAt.To add nodes to the collection, use the Add or AddAt method. Per rimuovere i nodi dalla raccolta, utilizzare il metodo Remove, RemoveAto Clear.To remove nodes from the collection, use the Remove, RemoveAt, or Clear method.

Note

Quando il controllo TreeView è associato a un'origine dati, le raccolte Nodes e ChildNodes vengono popolate automaticamente ogni volta che si verifica l'associazione.When the TreeView control is bound to a data source, the Nodes and ChildNodes collections are automatically populated each time binding occurs. Eventuali modifiche apportate alle raccolte tra binding andranno perse.Any changes to the collections between bindings will be lost. Per mantenere queste modifiche, aggiornare l'origine dati o ricompilare manualmente la raccolta ogni volta che si esegue l'associazione.To retain these changes, either update the data source or manually rebuild the collection each time you bind.

Il TreeNodeCollection contiene proprietà e metodi che consentono di recuperare informazioni sulla raccolta stessa.The TreeNodeCollection contains properties and methods that allow you to retrieve information about the collection itself. Per conoscere il numero di elementi presenti nella raccolta, utilizzare la proprietà Count.To find out how many items are in the collection, use the Count property. Se si desidera determinare se la raccolta contiene un determinato oggetto TreeNode, utilizzare il metodo Contains.If you want to determine whether the collection contains a certain TreeNode object, use the Contains method. Per ottenere l'indice di un oggetto TreeNode nella raccolta, utilizzare il metodo IndexOf.To get the index of a TreeNode object in the collection, use the IndexOf method.

Constructors

TreeNodeCollection()

Inizializza una nuova istanza della classe TreeNodeCollection usando i valori predefiniti.Initializes a new instance of the TreeNodeCollection class using the default values.

TreeNodeCollection(TreeNode)

Inizializza una nuova istanza della classe TreeNodeCollection utilizzando il nodo padre, o proprietario, specificato.Initializes a new instance of the TreeNodeCollection class using the specified parent node (or owner).

Properties

Count

Ottiene il numero di elementi nell'oggetto TreeNodeCollection.Gets the number of items in the TreeNodeCollection object.

IsSynchronized

Ottiene un valore che indica se l'accesso all'oggetto TreeNodeCollection è sincronizzato (affidabile).Gets a value indicating whether access to the TreeNodeCollection is synchronized (thread safe).

Item[Int32]

Ottiene l'oggetto TreeNode in corrispondenza dell'indice specificato nell'oggetto TreeNodeCollection.Gets the TreeNode object at the specified index in the TreeNodeCollection object.

SyncRoot

Ottiene un oggetto che può essere usato per sincronizzare l'accesso all'oggetto TreeNodeCollection.Gets an object that can be used to synchronize access to the TreeNodeCollection object.

Methods

Add(TreeNode)

Aggiunge l'oggetto TreeNode specificato alla fine dell'oggetto TreeNodeCollection.Appends the specified TreeNode object to the end of the TreeNodeCollection object.

AddAt(Int32, TreeNode)

Inserisce nell'oggetto TreeNode corrente in corrispondenza della posizione di indice specificata l'oggetto TreeNodeCollection specificato.Inserts the specified TreeNode object in a TreeNodeCollection object at the specified index location.

Clear()

Svuota l'oggetto TreeNodeCollection.Empties the TreeNodeCollection object.

Contains(TreeNode)

Determina se l'oggetto TreeNode specificato è incluso nell'insieme.Determines whether the specified TreeNode object is in the collection.

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.Copies all the items from the TreeNodeCollection object to a compatible one-dimensional array of TreeNode objects, starting at the specified index in the target array.

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetEnumerator()

Restituisce un enumeratore che può essere utilizzato per scorrere un oggetto TreeNodeCollection.Returns an enumerator that can be used to iterate through a TreeNodeCollection object.

GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
IndexOf(TreeNode)

Determina l'indice dell'oggetto TreeNode specificato.Determines the index of the specified TreeNode object.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
Remove(TreeNode)

Rimuove dall'oggetto TreeNode l'oggetto TreeNodeCollection specificato.Removes the specified TreeNode object from the TreeNodeCollection object.

RemoveAt(Int32)

Rimuove dall'oggetto TreeNode l'oggetto TreeNodeCollection in corrispondenza della posizione di indice specificata.Removes the TreeNode object at the specified index location from the TreeNodeCollection object.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Explicit Interface Implementations

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.Copies all the items from the TreeNodeCollection object to a compatible one-dimensional Array, starting at the specified index in the target array.

IStateManager.IsTrackingViewState

Ottiene un valore che indica se l'oggetto TreeNodeCollection sta salvando le modifiche apportate al relativo stato di visualizzazione.Gets a value indicating whether the TreeNodeCollection object is saving changes to its view state.

IStateManager.LoadViewState(Object)

Carica lo stato di visualizzazione precedentemente salvato dell'oggetto TreeNodeCollection.Loads the TreeNodeCollection object's previously saved view state.

IStateManager.SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione in un oggetto Object.Saves the changes to view state to a Object.

IStateManager.TrackViewState()

Indica all'oggetto TreeNodeCollection di tenere traccia delle modifiche apportate allo stato di visualizzazione.Instructs the TreeNodeCollection to track changes to its view state.

Extension Methods

Cast<TResult>(IEnumerable)

Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

Consente la parallelizzazione di una query.Enables parallelization of a query.

AsQueryable(IEnumerable)

Converte un oggetto IEnumerable in un oggetto IQueryable.Converts an IEnumerable to an IQueryable.

Applies to

See also