TreeNodeCollection Sınıf

Tanım

Nesne koleksiyonunu TreeNode temsil eder.

public ref class TreeNodeCollection : System::Collections::IList
public class TreeNodeCollection : System.Collections.IList
type TreeNodeCollection = class
    interface IList
    interface ICollection
    interface IEnumerable
Public Class TreeNodeCollection
Implements IList
Devralma
TreeNodeCollection
Uygulamalar

Örnekler

Aşağıdaki kod örneği bir TreeView denetimde müşteri bilgilerini görüntüler. Kök ağaç düğümleri müşteri adlarını, alt ağaç düğümleri ise her müşteriye atanan sipariş numaralarını görüntüler. Bu örnekte, her birinde 15 sipariş olan 1.000 müşteri görüntülenir. ve yöntemleri kullanılarak BeginUpdateEndUpdate öğesinin yeniden boyanmış TreeView olması bastırılır ve nesneler oluşturulurken ve boyanırken TreeNodeTreeView bir bekleme Cursor görüntülenir. Bu örnek, bir Customer nesne koleksiyonunu Order barındırabilen bir nesneniz olmasını gerektirir. Ayrıca üzerinde bir TreeView denetimin Formörneğini oluşturmuş olmanız gerekir.

// The basic Customer class.
ref class Customer: public System::Object
{
private:
   String^ custName;

protected:
   ArrayList^ custOrders;

public:
   Customer( String^ customername )
   {
      custName = "";
      custOrders = gcnew ArrayList;
      this->custName = customername;
   }


   property String^ CustomerName 
   {
      String^ get()
      {
         return this->custName;
      }

      void set( String^ value )
      {
         this->custName = value;
      }

   }

   property ArrayList^ CustomerOrders 
   {
      ArrayList^ get()
      {
         return this->custOrders;
      }

   }

};


// End Customer class
// The basic customer Order class.
ref class Order: public System::Object
{
private:
   String^ ordID;

public:
   Order( String^ orderid )
   {
      ordID = "";
      this->ordID = orderid;
   }


   property String^ OrderID 
   {
      String^ get()
      {
         return this->ordID;
      }

      void set( String^ value )
      {
         this->ordID = value;
      }

   }

};
// End Order class



void FillMyTreeView()
{
   // Add customers to the ArrayList of Customer objects.
   for ( int x = 0; x < 1000; x++ )
   {
      customerArray->Add( gcnew Customer( "Customer " + x ) );
   }
   
   // Add orders to each Customer object in the ArrayList.
   IEnumerator^ myEnum = customerArray->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Customer^ customer1 = safe_cast<Customer^>(myEnum->Current);
      for ( int y = 0; y < 15; y++ )
      {
         customer1->CustomerOrders->Add( gcnew Order( "Order " + y ) );
      }
   }

   // Display a wait cursor while the TreeNodes are being created.
   ::Cursor::Current = gcnew System::Windows::Forms::Cursor( "MyWait.cur" );
   
   // Suppress repainting the TreeView until all the objects have been created.
   treeView1->BeginUpdate();
   
   // Clear the TreeView each time the method is called.
   treeView1->Nodes->Clear();
   
   // Add a root TreeNode for each Customer object in the ArrayList.
   myEnum = customerArray->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Customer^ customer2 = safe_cast<Customer^>(myEnum->Current);
      treeView1->Nodes->Add( gcnew TreeNode( customer2->CustomerName ) );
      
      // Add a child treenode for each Order object in the current Customer object.
      IEnumerator^ myEnum = customer2->CustomerOrders->GetEnumerator();
      while ( myEnum->MoveNext() )
      {
         Order^ order1 = safe_cast<Order^>(myEnum->Current);
         treeView1->Nodes[ customerArray->IndexOf( customer2 ) ]->Nodes->Add( gcnew TreeNode( customer2->CustomerName + "." + order1->OrderID ) );
      }
   }
   
   // Reset the cursor to the default for all controls.
   ::Cursor::Current = Cursors::Default;
   
   // Begin repainting the TreeView.
   treeView1->EndUpdate();
}

// The basic Customer class.
public class Customer : System.Object
{
   private string custName = "";
   protected ArrayList custOrders = new ArrayList();

   public Customer(string customername)
   {
      this.custName = customername;
   }

   public string CustomerName
   {      
      get{return this.custName;}
      set{this.custName = value;}
   }

   public ArrayList CustomerOrders 
   {
      get{return this.custOrders;}
   }
} // End Customer class 

// The basic customer Order class.
public class Order : System.Object
{
   private string ordID = "";

   public Order(string orderid)
   {
      this.ordID = orderid;
   }

   public string OrderID
   {      
      get{return this.ordID;}
      set{this.ordID = value;}
   }
} // End Order class

// Create a new ArrayList to hold the Customer objects.
private ArrayList customerArray = new ArrayList(); 

private void FillMyTreeView()
{
   // Add customers to the ArrayList of Customer objects.
   for(int x=0; x<1000; x++)
   {
      customerArray.Add(new Customer("Customer" + x.ToString()));
   }

   // Add orders to each Customer object in the ArrayList.
   foreach(Customer customer1 in customerArray)
   {
      for(int y=0; y<15; y++)
      {
         customer1.CustomerOrders.Add(new Order("Order" + y.ToString()));    
      }
   }

   // Display a wait cursor while the TreeNodes are being created.
   Cursor.Current = new Cursor("MyWait.cur");
        
   // Suppress repainting the TreeView until all the objects have been created.
   treeView1.BeginUpdate();

   // Clear the TreeView each time the method is called.
   treeView1.Nodes.Clear();

   // Add a root TreeNode for each Customer object in the ArrayList.
   foreach(Customer customer2 in customerArray)
   {
      treeView1.Nodes.Add(new TreeNode(customer2.CustomerName));
          
      // Add a child treenode for each Order object in the current Customer object.
      foreach(Order order1 in customer2.CustomerOrders)
      {
         treeView1.Nodes[customerArray.IndexOf(customer2)].Nodes.Add(
           new TreeNode(customer2.CustomerName + "." + order1.OrderID));
      }
   }

   // Reset the cursor to the default for all controls.
   Cursor.Current = Cursors.Default;

   // Begin repainting the TreeView.
   treeView1.EndUpdate();
}
Public Class Customer
   Inherits [Object]
   Private custName As String = ""
   Friend custOrders As New ArrayList()

   Public Sub New(ByVal customername As String)
      Me.custName = customername
   End Sub

   Public Property CustomerName() As String
      Get
         Return Me.custName
      End Get
      Set(ByVal Value As String)
         Me.custName = Value
      End Set
   End Property

   Public ReadOnly Property CustomerOrders() As ArrayList
      Get
         Return Me.custOrders
      End Get
   End Property
End Class


Public Class Order
   Inherits [Object]
   Private ordID As String

   Public Sub New(ByVal orderid As String)
      Me.ordID = orderid
   End Sub

   Public Property OrderID() As String
      Get
         Return Me.ordID
      End Get
      Set(ByVal Value As String)
         Me.ordID = Value
      End Set
   End Property
End Class

' Create a new ArrayList to hold the Customer objects.
Private customerArray As New ArrayList()

Private Sub FillMyTreeView()
   ' Add customers to the ArrayList of Customer objects.
   Dim x As Integer
   For x = 0 To 999
      customerArray.Add(New Customer("Customer" + x.ToString()))
   Next x

   ' Add orders to each Customer object in the ArrayList.
   Dim customer1 As Customer
   For Each customer1 In customerArray
      Dim y As Integer
      For y = 0 To 14
         customer1.CustomerOrders.Add(New Order("Order" + y.ToString()))
      Next y
   Next customer1

   ' Display a wait cursor while the TreeNodes are being created.
   Cursor.Current = New Cursor("MyWait.cur")

   ' Suppress repainting the TreeView until all the objects have been created.
   treeView1.BeginUpdate()

   ' Clear the TreeView each time the method is called.
   treeView1.Nodes.Clear()

   ' Add a root TreeNode for each Customer object in the ArrayList.
   Dim customer2 As Customer
   For Each customer2 In customerArray
      treeView1.Nodes.Add(New TreeNode(customer2.CustomerName))

      ' Add a child TreeNode for each Order object in the current Customer object.
      Dim order1 As Order
      For Each order1 In customer2.CustomerOrders
         treeView1.Nodes(customerArray.IndexOf(customer2)).Nodes.Add( _
    New TreeNode(customer2.CustomerName + "." + order1.OrderID))
      Next order1
   Next customer2

   ' Reset the cursor to the default for all controls.
   Cursor.Current = System.Windows.Forms.Cursors.Default

   ' Begin repainting the TreeView.
   treeView1.EndUpdate()
End Sub

Açıklamalar

Add, Removeve RemoveAt yöntemleri, koleksiyona tek tek ağaç düğümleri eklemenizi ve kaldırmanızı sağlar.

Not

Koleksiyonun numaralandırılması ve düğümlerin kaldırılması desteklenmez.

Koleksiyondaki AddRange tüm ağaç düğümlerini eklemek veya kaldırmak için veya Clear yöntemlerini de kullanabilirsiniz.

Sınıflar sınıfından TreeNodeCollection devralamaz.

Özellikler

Count

Koleksiyondaki toplam nesne sayısını TreeNode alır.

IsReadOnly

Topluluğun salt okunur olup olmadığını gösteren bir değer alır.

Item[Int32]

koleksiyonda TreeNode belirtilen dizinlenmiş konumda öğesini alır veya ayarlar.

Item[String]

Koleksiyondan belirtilen anahtara sahip ağaç düğümünü alır.

Yöntemler

Add(String)

Geçerli ağaç düğümü koleksiyonunun sonuna belirtilen etiket metniyle yeni bir ağaç düğümü ekler.

Add(String, String)

Belirtilen anahtar ve metinle yeni bir ağaç düğümü oluşturur ve bunu koleksiyona ekler.

Add(String, String, Int32)

Belirtilen anahtar, metin ve görüntü ile bir ağaç düğümü oluşturur ve bunu koleksiyona ekler.

Add(String, String, Int32, Int32)

Belirtilen anahtar, metin ve görüntülerle bir ağaç düğümü oluşturur ve bunu koleksiyona ekler.

Add(String, String, String)

Belirtilen anahtar, metin ve görüntü ile bir ağaç düğümü oluşturur ve bunu koleksiyona ekler.

Add(String, String, String, String)

Belirtilen anahtar, metin ve görüntülerle bir ağaç düğümü oluşturur ve bunu koleksiyona ekler.

Add(TreeNode)

Ağaç düğümü koleksiyonunun sonuna önceden oluşturulmuş bir ağaç düğümü ekler.

AddRange(TreeNode[])

Daha önce oluşturulmuş ağaç düğümlerinden oluşan bir diziyi koleksiyona ekler.

Clear()

Koleksiyondaki tüm ağaç düğümlerini kaldırır.

Contains(TreeNode)

Belirtilen ağaç düğümünün koleksiyonun bir üyesi olup olmadığını belirler.

ContainsKey(String)

Koleksiyonun belirtilen anahtara sahip bir ağaç düğümü içerip içermediğini belirler.

CopyTo(Array, Int32)

Koleksiyonun tamamını dizi içinde belirtilen bir konumdaki mevcut bir diziye kopyalar.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Find(String, Boolean)

İsteğe bağlı olarak alt düğümlerde arama yaparak belirtilen anahtara sahip ağaç düğümlerini bulur.

GetEnumerator()

Ağaç düğümü koleksiyonunda yineleme yapmak için kullanılabilecek bir numaralandırıcı döndürür.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IndexOf(TreeNode)

Koleksiyonda belirtilen ağaç düğümünün dizinini döndürür.

IndexOfKey(String)

Belirtilen anahtara sahip bir ağaç düğümünün ilk oluşumunun dizinini döndürür.

Insert(Int32, String)

Belirtilen metinle bir ağaç düğümü oluşturur ve belirtilen dizine ekler.

Insert(Int32, String, String)

Belirtilen metin ve anahtarla bir ağaç düğümü oluşturur ve bunu koleksiyona ekler.

Insert(Int32, String, String, Int32)

Belirtilen anahtar, metin ve görüntü ile bir ağaç düğümü oluşturur ve bunu belirtilen dizindeki koleksiyona ekler.

Insert(Int32, String, String, Int32, Int32)

Belirtilen anahtar, metin ve görüntülerle bir ağaç düğümü oluşturur ve bunu belirtilen dizindeki koleksiyona ekler.

Insert(Int32, String, String, String)

Belirtilen anahtar, metin ve görüntü ile bir ağaç düğümü oluşturur ve bunu belirtilen dizindeki koleksiyona ekler.

Insert(Int32, String, String, String, String)

Belirtilen anahtar, metin ve görüntülerle bir ağaç düğümü oluşturur ve bunu belirtilen dizindeki koleksiyona ekler.

Insert(Int32, TreeNode)

Belirtilen konumdaki ağaç düğümü koleksiyonuna mevcut bir ağaç düğümü ekler.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Remove(TreeNode)

Belirtilen ağaç düğümünü ağaç düğümü koleksiyonundan kaldırır.

RemoveAt(Int32)

Belirtilen dizindeki ağaç düğümü koleksiyonundan bir ağaç düğümünü kaldırır.

RemoveByKey(String)

Belirtilen anahtara sahip ağaç düğümünü koleksiyondan kaldırır.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

ICollection.IsSynchronized

Koleksiyona erişimin eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli).

ICollection.SyncRoot

Koleksiyona erişimi eşitlemek için kullanılabilecek bir nesne alır.

IList.Add(Object)

Ağaç düğümü koleksiyonunun sonuna bir nesne ekler.

IList.Contains(Object)

Belirtilen ağaç düğümünün koleksiyonun bir üyesi olup olmadığını belirler.

IList.IndexOf(Object)

Koleksiyonda belirtilen ağaç düğümünün dizinini döndürür.

IList.Insert(Int32, Object)

Belirtilen konumdaki ağaç düğümü koleksiyonuna mevcut bir ağaç düğümü ekler.

IList.IsFixedSize

Ağaç düğümü koleksiyonunun sabit bir boyuta sahip olup olmadığını gösteren bir değer alır.

IList.Item[Int32]

Koleksiyonda belirtilen dizinde ağaç düğümünü alır veya ayarlar.

IList.Remove(Object)

Belirtilen ağaç düğümünü ağaç düğümü koleksiyonundan kaldırır.

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Bir öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini sağlar.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır

Ayrıca bkz.