Compartir a través de


TreeNodeCollection Clase

Definición

Representa una colección de objetos TreeNode del control TreeView . Esta clase no puede heredarse.

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
Herencia
TreeNodeCollection
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra cómo agregar nodos mediante programación a y quitarlos de .TreeNodeCollection Observe que las Nodes propiedades y ChildNodes devuelven un TreeNodeCollection objeto .


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

Comentarios

La TreeNodeCollection clase se usa para almacenar y administrar una colección de TreeNode objetos en el TreeView control . El TreeView control usa la TreeNodeCollection clase en dos de sus propiedades. Almacena sus nodos raíz en la Nodes propiedad y sus nodos seleccionados en la CheckedNodes propiedad . La TreeNodeCollection colección también se usa para la ChildNodes propiedad para almacenar nodos secundarios (si los hay).

La TreeNodeCollection clase admite varias maneras de acceder a los elementos de la colección:

  • Use el Item[] indexador para recuperar un TreeNode objeto directamente en un índice específico de base cero.

  • Use el GetEnumerator método para crear un enumerador que se pueda usar para recorrer en iteración la colección.

  • Use foreach (C#) o For Each (Visual Basic) para recorrer en iteración la colección.

  • Use el CopyTo método para copiar el contenido de la colección en un Array objeto .

Puede administrar mediante programación el TreeNodeCollection mediante adición y eliminación de TreeNode objetos. Para agregar nodos a la colección, use el Add método o AddAt . Para quitar nodos de la colección, use el Removemétodo , RemoveAto Clear .

Nota

Cuando el TreeView control está enlazado a un origen de datos, las Nodes colecciones y ChildNodes se rellenan automáticamente cada vez que se produce el enlace. Los cambios realizados en las colecciones entre enlaces se perderán. Para conservar estos cambios, actualice el origen de datos o recompile manualmente la colección cada vez que se enlaza.

TreeNodeCollection contiene propiedades y métodos que permiten recuperar información sobre la propia colección. Para averiguar cuántos elementos hay en la colección, use la Count propiedad . Si desea determinar si la colección contiene un objeto determinado TreeNode , use el Contains método . Para obtener el índice de un TreeNode objeto de la colección, use el IndexOf método .

Constructores

TreeNodeCollection()

Inicializa una nueva instancia de la clase TreeNodeCollection con los valores predeterminados.

TreeNodeCollection(TreeNode)

Inicializa una instancia nueva de la clase TreeNodeCollection utilizando el nodo principal especificado (o propietario).

Propiedades

Count

Obtiene el número de elementos del objeto TreeNodeCollection.

IsSynchronized

Obtiene un valor que indica si el acceso a la interfaz TreeNodeCollection está sincronizado (es seguro para subprocesos).

Item[Int32]

Obtiene el objeto TreeNode situado en el índice especificado del objeto TreeNodeCollection.

SyncRoot

Obtiene un objeto que puede utilizarse para sincronizar el acceso al objeto TreeNodeCollection.

Métodos

Add(TreeNode)

Agrega el objeto TreeNode especificado al final del objeto TreeNodeCollection.

AddAt(Int32, TreeNode)

Inserta el objeto TreeNode especificado en un objeto TreeNodeCollection en la ubicación de índice especificada.

Clear()

Vacía el objeto TreeNodeCollection.

Contains(TreeNode)

Determina si el objeto TreeNode especificado está en la colección.

CopyTo(TreeNode[], Int32)

Copia todos los elementos del objeto TreeNodeCollection en una matriz unidimensional compatible de objetos TreeNode, empezando por el índice especificado de la matriz de destino.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetEnumerator()

Devuelve un enumerador que puede utilizarse para recorrer en iteración un objeto TreeNodeCollection.

GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IndexOf(TreeNode)

Determina el índice del objeto TreeNode especificado.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
Remove(TreeNode)

Quita el objeto TreeNode especificado del objeto TreeNodeCollection.

RemoveAt(Int32)

Quita el objeto TreeNode de la ubicación de índice especificada del objeto TreeNodeCollection.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

ICollection.CopyTo(Array, Int32)

Copia todos los elementos del objeto TreeNodeCollection en una matriz unidimensional compatible de objetos Array, empezando por el índice especificado de la matriz de destino.

IStateManager.IsTrackingViewState

Obtiene un valor que indica si el objeto TreeNodeCollection está guardando los cambios en su estado de vista.

IStateManager.LoadViewState(Object)

Carga el estado de vista previamente guardado del objeto TreeNodeCollection.

IStateManager.SaveViewState()

Guarda los cambios del estado de vista en un objeto Object.

IStateManager.TrackViewState()

Indica a la colección TreeNodeCollection que efectúe un seguimiento de los cambios de su estado de vista.

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.

Se aplica a

Consulte también