Udostępnij za pośrednictwem


TreeNodeCollection Klasa

Definicja

Reprezentuje kolekcję TreeNode obiektów w kontrolce TreeView . Klasa ta nie może być dziedziczona.

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
Dziedziczenie
TreeNodeCollection
Implementuje

Przykłady

W poniższym przykładzie pokazano, jak programowo dodawać węzły i usuwać je z obiektu TreeNodeCollection. Zwróć uwagę, że Nodes właściwości i ChildNodes zwracają TreeNodeCollection obiekt.


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

Uwagi

Klasa TreeNodeCollection służy do przechowywania kolekcji TreeNode obiektów w kontrolce TreeView i zarządzania nimi. Kontrolka TreeView używa TreeNodeCollection klasy w dwóch jej właściwościach. Przechowuje węzły główne we Nodes właściwości i jego wybranych węzłach we CheckedNodes właściwości. Kolekcja TreeNodeCollection jest również używana do ChildNodes przechowywania węzłów podrzędnych (jeśli istnieją).

Klasa TreeNodeCollection obsługuje kilka sposobów uzyskiwania dostępu do elementów w kolekcji:

  • Użyj indeksatora Item[] , aby pobrać TreeNode obiekt bezpośrednio z określonego indeksu opartego na zerze.

  • GetEnumerator Użyj metody , aby utworzyć moduł wyliczający, który może służyć do iteracji w kolekcji.

  • Użyj foreach (C#) lub For Each (Visual Basic), aby iterować po kolekcji.

  • CopyTo Użyj metody , aby skopiować zawartość kolekcji do Array obiektu.

Możesz programowo zarządzać obiektami TreeNodeCollection , dodając i usuwając TreeNode obiekty. Aby dodać węzły do kolekcji, użyj Add metody or AddAt . Aby usunąć węzły z kolekcji, użyj Removemetody , RemoveAtlub Clear .

Uwaga

Gdy kontrolka TreeView jest powiązana ze źródłem danych, Nodes kolekcje i ChildNodes są automatycznie wypełniane za każdym razem, gdy następuje powiązanie. Wszelkie zmiany kolekcji między powiązaniami zostaną utracone. Aby zachować te zmiany, zaktualizuj źródło danych lub ręcznie ponownie skompiluj kolekcję przy każdym powiązaniu.

Zawiera TreeNodeCollection właściwości i metody, które umożliwiają pobieranie informacji o samej kolekcji. Aby dowiedzieć się, ile elementów znajduje się w kolekcji, użyj Count właściwości . Jeśli chcesz określić, czy kolekcja zawiera określony TreeNode obiekt, użyj Contains metody . Aby uzyskać indeks TreeNode obiektu w kolekcji, użyj IndexOf metody .

Konstruktory

TreeNodeCollection()

Inicjuje TreeNodeCollection nowe wystąpienie klasy przy użyciu wartości domyślnych.

TreeNodeCollection(TreeNode)

Inicjuje TreeNodeCollection nowe wystąpienie klasy przy użyciu określonego węzła nadrzędnego (lub właściciela).

Właściwości

Count

Pobiera liczbę elementów w TreeNodeCollection obiekcie.

IsSynchronized

Pobiera wartość wskazującą, czy dostęp do elementu TreeNodeCollection jest synchronizowany (bezpieczny wątek).

Item[Int32]

TreeNode Pobiera obiekt w określonym indeksie TreeNodeCollection w obiekcie.

SyncRoot

Pobiera obiekt, który może służyć do synchronizowania dostępu do TreeNodeCollection obiektu.

Metody

Add(TreeNode)

Dołącza określony TreeNode obiekt na końcu TreeNodeCollection obiektu.

AddAt(Int32, TreeNode)

Wstawia określony TreeNode obiekt w obiekcie w TreeNodeCollection określonej lokalizacji indeksu.

Clear()

Opróżnia TreeNodeCollection obiekt.

Contains(TreeNode)

Określa, czy określony TreeNode obiekt znajduje się w kolekcji.

CopyTo(TreeNode[], Int32)

Kopiuje wszystkie elementy z TreeNodeCollection obiektu do zgodnej jednowymiarowej tablicy TreeNode obiektów, zaczynając od określonego indeksu w tablicy docelowej.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetEnumerator()

Zwraca moduł wyliczający, który może służyć do iterowania przez TreeNodeCollection obiekt.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
IndexOf(TreeNode)

Określa indeks określonego TreeNode obiektu.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
Remove(TreeNode)

Usuwa określony TreeNode obiekt z TreeNodeCollection obiektu.

RemoveAt(Int32)

TreeNode Usuwa obiekt w określonej lokalizacji indeksu TreeNodeCollection z obiektu.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

ICollection.CopyTo(Array, Int32)

Kopiuje wszystkie elementy z TreeNodeCollection obiektu do zgodnego jednowymiarowego Array, zaczynając od określonego indeksu w tablicy docelowej.

IStateManager.IsTrackingViewState

Pobiera wartość wskazującą, czy TreeNodeCollection obiekt zapisuje zmiany w stanie widoku.

IStateManager.LoadViewState(Object)

TreeNodeCollection Ładuje wcześniej zapisany stan widoku obiektu.

IStateManager.SaveViewState()

Zapisuje zmiany w stanie wyświetlania w obiekcie Object.

IStateManager.TrackViewState()

Instruuje element TreeNodeCollection , aby śledzić zmiany w stanie widoku.

Metody rozszerzania

Cast<TResult>(IEnumerable)

Rzutuje elementy elementu IEnumerable na określony typ.

OfType<TResult>(IEnumerable)

Filtruje elementy IEnumerable elementu na podstawie określonego typu.

AsParallel(IEnumerable)

Umożliwia równoległość zapytania.

AsQueryable(IEnumerable)

Konwertuje element IEnumerable na .IQueryable

Dotyczy

Zobacz też