TreeNodeBindingCollection Sınıf

Tanım

Denetimdeki TreeView bir nesne koleksiyonunu TreeNodeBinding temsil eder. Bu sınıf devralınamaz.

public ref class TreeNodeBindingCollection sealed : System::Web::UI::StateManagedCollection
public sealed class TreeNodeBindingCollection : System.Web.UI.StateManagedCollection
type TreeNodeBindingCollection = class
    inherit StateManagedCollection
Public NotInheritable Class TreeNodeBindingCollection
Inherits StateManagedCollection
Devralma
TreeNodeBindingCollection

Örnekler

Bu bölüm iki kod örneği içerir. İlk kod örneği, bir TreeNodeBindingCollection nesnenin bildirim temelli olarak nasıl doldurulduğunu gösterir. İkinci kod örneği, bir TreeNodeBindingCollection nesnenin program aracılığıyla nasıl doldurulduğunu gösterir.

Aşağıdaki kod örneği, bir TreeNodeBindingCollection nesnenin bildirim temelli olarak nasıl doldurulduğunu gösterir. Bu örneğin düzgün çalışması için, bu bölümün sonunda bulunan XML verilerini Book.xml adlı bir dosyaya kopyalamanız gerekir.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView XML Data Binding Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView XML Data Binding Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView XML Data Binding Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView XML Data Binding Example</h3>
    
      <asp:TreeView id="BookTreeView" 
        DataSourceID="BookXmlDataSource"
        runat="server">
         
        <DataBindings>
          <asp:TreeNodeBinding DataMember="Book" TextField="Title"/>
          <asp:TreeNodeBinding DataMember="Chapter" TextField="Heading"/>
          <asp:TreeNodeBinding DataMember="Section" TextField="Heading"/>
        </DataBindings>
         
      </asp:TreeView>

      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
    
    </form>
  </body>
</html>

Aşağıdaki kod örneği, bir TreeNodeBindingCollection nesnenin program aracılığıyla nasıl doldurulduğunu gösterir. Bu örneğin düzgün çalışması için, bu bölümün sonunda bulunan örnek XML verilerini Book.xml adlı bir dosyaya kopyalamanız gerekir.


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

    // Create a new TreeView control.
    TreeView NewTree = new TreeView();

    // Set the properties of the TreeView control.
    NewTree.ID = "BookTreeView";
    NewTree.DataSourceID = "BookXmlDataSource";

    // Create the tree node binding relationship.

    // Create the root node binding.
    TreeNodeBinding RootBinding = new TreeNodeBinding();
    RootBinding.DataMember = "Book";
    RootBinding.TextField = "Title";

    // Create the parent node binding.
    TreeNodeBinding ParentBinding = new TreeNodeBinding();
    ParentBinding.DataMember = "Chapter";
    ParentBinding.TextField = "Heading";

    // Create the leaf node binding.
    TreeNodeBinding LeafBinding = new TreeNodeBinding();
    LeafBinding.DataMember = "Section";
    LeafBinding.TextField = "Heading";

    // Add bindings to the DataBindings collection.
    NewTree.DataBindings.Add(RootBinding);
    NewTree.DataBindings.Add(ParentBinding); 
    NewTree.DataBindings.Add(LeafBinding);

    // Manually register the event handler for the SelectedNodeChanged event.
    NewTree.SelectedNodeChanged += new EventHandler(this.Node_Change);

    // Add the TreeView control to the Controls collection of the PlaceHolder control.
    ControlPlaceHolder.Controls.Add(NewTree);

  }

  void Node_Change(Object sender, EventArgs e)
  {

    // Retrieve the TreeView control from the Controls collection of the PlaceHolder control.
    TreeView LocalTree = (TreeView)ControlPlaceHolder.FindControl("BookTreeView");

    // Display the selected node.
    Message.Text = "You selected: " + LocalTree.SelectedNode.Text;

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView Constructor Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView Constructor Example</h3>
      
      <asp:PlaceHolder id="ControlPlaceHolder" runat="server">
      </asp:PlaceHolder>
   
      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
      
      <br /><br />
      
      <asp:Label id="Message" runat="server"/>
    
    </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)

    ' Create a new TreeView control.
    Dim NewTree As New TreeView

    ' Set the properties of the TreeView control.
    NewTree.ID = "BookTreeView"
    NewTree.DataSourceID = "BookXmlDataSource"

    ' Create the tree node binding relationship.

    ' Create the root node binding.
    Dim RootBinding As New TreeNodeBinding
    RootBinding.DataMember = "Book"
    RootBinding.TextField = "Title"

    ' Create the parent node binding.
    Dim ParentBinding As New TreeNodeBinding
    ParentBinding.DataMember = "Chapter"
    ParentBinding.TextField = "Heading"

    ' Create the leaf node binding.
    Dim LeafBinding As New TreeNodeBinding
    LeafBinding.DataMember = "Section"
    LeafBinding.TextField = "Heading"

    ' Add bindings to the DataBindings collection.
    NewTree.DataBindings.Add(RootBinding)
    NewTree.DataBindings.Add(ParentBinding)
    NewTree.DataBindings.Add(LeafBinding)

    ' Manually register the event handler for the SelectedNodeChanged event.
    AddHandler NewTree.SelectedNodeChanged, AddressOf Node_Change

    ' Add the TreeView control to the Controls collection of the PlaceHolder control.
    ControlPlaceHolder.Controls.Add(NewTree)

  End Sub

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

    ' Retrieve the TreeView control from the Controls collection of the PlaceHolder control.
    Dim LocalTree As TreeView = CType(ControlPlaceHolder.FindControl("BookTreeView"), TreeView)

    ' Display the selected node.
    Message.Text = "You selected: " & LocalTree.SelectedNode.Text

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>TreeView Constructor Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>TreeView Constructor Example</h3>
      
      <asp:PlaceHolder id="ControlPlaceHolder" runat="server">
      </asp:PlaceHolder>
   
      <asp:XmlDataSource id="BookXmlDataSource"  
        DataFile="Book.xml"
        runat="server">
      </asp:XmlDataSource>
      
      <br /><br />
      
      <asp:Label id="Message" runat="server"/>
    
    </form>
  </body>
</html>

Yukarıdaki kod örnekleri için XML verileri aşağıda verilmiştir.

<Book Title="Book Title">  
    <Chapter Heading="Chapter 1">  
       <Section Heading="Section 1">  
       </Section>  
       <Section Heading="Section 2">  
       </Section>  
    </Chapter>  
    <Chapter Heading="Chapter 2">  
        <Section Heading="Section 1">  
        </Section>  
    </Chapter>  
</Book>  

Açıklamalar

TreeNodeBindingCollection sınıfı, denetimdeki TreeView bir nesne koleksiyonunu TreeNodeBinding depolamak ve yönetmek için kullanılır. Denetimi, TreeView özelliği için sınıfını TreeNodeBindingCollection DataBindings kullanır.

özelliği, DataBindings bir veri öğesiyle bağlandığınız düğüm arasındaki ilişkiyi tanımlayan nesneler içerir TreeNodeBinding . Her veri öğesinin birden çok özellik (çeşitli özniteliklere sahip bir XML öğesi gibi) içerdiği bir veri kaynağına bağlanırken, düğüm varsayılan olarak veri öğesinin yöntemi tarafından ToString döndürülen değeri görüntüler. XML öğesi söz konusu olduğunda düğüm, ağacın temel yapısını gösteren ancak aksi takdirde çok kullanışlı olmayan öğe adını görüntüler. Ağaç düğümü bağlamalarını belirterek düğümü belirli bir veri öğesi özelliğine bağlayabilirsiniz. DataBindings Koleksiyon program aracılığıyla doldurulabilse de, genellikle bildirim temelli olarak ayarlanır.

Ağaç düğümü bağlamalarını bildirimli olarak ayarlamak için:

  1. Açma ve kapatma <DataBindings> etiketlerini denetimin açma ve kapatma etiketleri arasında iç içe yerleştirme TreeView .

  2. Belirtmek istediğiniz her ağaç düğümü bağlaması için açma ve kapatma <DataBindings> etiketleri arasına öğeleri yerleştirin<asp:TreeNodeBinding>.

Nesneleri ekleyerek ve kaldırarak TreeNodeBinding program aracılığıyla yönetebilirsinizTreeNodeBindingCollection. Koleksiyona nesne TreeNodeBinding eklemek için veya Insert yöntemini kullanınAdd. Düğümleri koleksiyondan kaldırmak için , RemoveAtveya StateManagedCollection.Clear yöntemini kullanınRemove.

sınıfı koleksiyondaki TreeNodeBindingCollection öğelere erişmenin çeşitli yollarını destekler:

  • Item[] Bir nesneyi doğrudan belirli bir sıfır tabanlı dizinde almak TreeNode için dizin oluşturucuyu kullanın.

  • StateManagedCollection.GetEnumerator Yöntemini kullanarak koleksiyonda yinelemek için kullanılabilecek bir numaralandırıcı oluşturun.

Özellikler

Count

Koleksiyondaki StateManagedCollection öğelerin sayısını alır.

(Devralındığı yer: StateManagedCollection)
Item[Int32]

Nesnede TreeNodeBinding belirtilen dizindeki TreeNodeBindingCollection nesneyi alır veya ayarlar.

Yöntemler

Add(TreeNodeBinding)

Belirtilen TreeNodeBinding nesneyi nesnenin sonuna TreeNodeBindingCollection ekler.

Clear()

Koleksiyondaki StateManagedCollection tüm öğeleri kaldırır.

(Devralındığı yer: StateManagedCollection)
Contains(TreeNodeBinding)

Belirtilen TreeNodeBinding nesnenin koleksiyonda olup olmadığını belirler.

CopyTo(Array, Int32)

Koleksiyonun StateManagedCollection öğelerini belirli bir dizi dizininden başlayarak bir diziye kopyalar.

(Devralındığı yer: StateManagedCollection)
CopyTo(TreeNodeBinding[], Int32)

Nesnedeki tüm öğeleri, hedef dizideki TreeNodeBindingCollection TreeNodeBinding belirtilen dizinden başlayarak uyumlu bir tek boyutlu nesne dizisine kopyalar.

CreateKnownType(Int32)

Türetilmiş bir sınıfta geçersiz kılındığında, uygulayan IStateManagerbir sınıfın örneğini oluşturur. Oluşturulan nesnenin türü, yöntemi tarafından döndürülen koleksiyonun belirtilen üyesini GetKnownTypes() temel alır.

(Devralındığı yer: StateManagedCollection)
Equals(Object)

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

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

Koleksiyonda StateManagedCollection yineleyen bir yineleyici döndürür.

(Devralındığı yer: StateManagedCollection)
GetHashCode()

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

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

Türetilmiş bir sınıfta geçersiz kılındığında, koleksiyonun IStateManager içerebileceği bir tür StateManagedCollection dizisi alır.

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

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

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

Koleksiyonda belirtilen TreeNodeBinding nesnenin dizinini belirler.

Insert(Int32, TreeNodeBinding)

Belirtilen nesneyi belirtilen TreeNodeBinding dizin konumundaki nesneye TreeNodeBindingCollection ekler.

MemberwiseClone()

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

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

Türetilmiş bir sınıfta geçersiz kılındığında, yöntemi koleksiyondaki tüm öğeleri kaldırmadan önce Clear() ek iş gerçekleştirir.

(Devralındığı yer: StateManagedCollection)
OnClearComplete()

Türetilmiş bir sınıfta geçersiz kılındığında, yöntem koleksiyondan tüm öğeleri kaldırmayı Clear() tamamladıktan sonra ek iş gerçekleştirir.

(Devralındığı yer: StateManagedCollection)
OnInsert(Int32, Object)

Türetilmiş bir sınıfta geçersiz kılındığında, veya IList.Add(Object) yöntemi koleksiyona bir öğe eklemeden önce IList.Insert(Int32, Object) ek iş gerçekleştirir.

(Devralındığı yer: StateManagedCollection)
OnInsertComplete(Int32, Object)

Türetilmiş bir sınıfta geçersiz kılındığında, veya IList.Add(Object) yöntemi koleksiyona bir öğe ekledikten sonra IList.Insert(Int32, Object) ek iş gerçekleştirir.

(Devralındığı yer: StateManagedCollection)
OnRemove(Int32, Object)

Türetilmiş bir sınıfta geçersiz kılındığında, veya IList.RemoveAt(Int32) yöntemi belirtilen öğeyi koleksiyondan kaldırmadan önce IList.Remove(Object) ek iş gerçekleştirir.

(Devralındığı yer: StateManagedCollection)
OnRemoveComplete(Int32, Object)

Türetilmiş bir sınıfta geçersiz kılındığında, veya IList.RemoveAt(Int32) yöntemi belirtilen öğeyi koleksiyondan kaldırdıktan sonra IList.Remove(Object) ek iş gerçekleştirir.

(Devralındığı yer: StateManagedCollection)
OnValidate(Object)

Türetilmiş bir sınıfta geçersiz kılındığında, koleksiyonun StateManagedCollection bir öğesini doğrular.

(Devralındığı yer: StateManagedCollection)
Remove(TreeNodeBinding)

Belirtilen TreeNodeBinding nesneyi nesneden TreeNodeBindingCollection kaldırır.

RemoveAt(Int32)

TreeNodeBinding Belirtilen dizin konumundaki nesneyi nesneden TreeNodeBindingCollection kaldırır.

SetDirty()

Koleksiyonun tamamının StateManagedCollection görünüm durumuna seri hale getirilmeye zorlanması.

(Devralındığı yer: StateManagedCollection)
SetDirtyObject(Object)

Türetilmiş bir sınıfta geçersiz kılındığında, yalnızca değişiklik bilgilerini kaydetmek yerine, koleksiyonun içerdiği bir object öğeye durumunun tamamını görüntülemesini bildirir.

(Devralındığı yer: StateManagedCollection)
ToString()

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

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

ICollection.Count

Koleksiyondaki StateManagedCollection öğelerin sayısını alır.

(Devralındığı yer: StateManagedCollection)
ICollection.IsSynchronized

Koleksiyonun StateManagedCollection eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli). Bu yöntem her durumda döndürür false .

(Devralındığı yer: StateManagedCollection)
ICollection.SyncRoot

Koleksiyona erişimi StateManagedCollection eşitlemek için kullanılabilecek bir nesne alır. Bu yöntem her durumda döndürür null .

(Devralındığı yer: StateManagedCollection)
IEnumerable.GetEnumerator()

Koleksiyonda StateManagedCollection yineleyen bir yineleyici döndürür.

(Devralındığı yer: StateManagedCollection)
IList.Add(Object)

Koleksiyona StateManagedCollection bir öğe ekler.

(Devralındığı yer: StateManagedCollection)
IList.Clear()

Koleksiyondaki StateManagedCollection tüm öğeleri kaldırır.

(Devralındığı yer: StateManagedCollection)
IList.Contains(Object)

Koleksiyonun StateManagedCollection belirli bir değer içerip içermediğini belirler.

(Devralındığı yer: StateManagedCollection)
IList.IndexOf(Object)

Koleksiyondaki belirtilen öğenin dizinini StateManagedCollection belirler.

(Devralındığı yer: StateManagedCollection)
IList.Insert(Int32, Object)

Belirtilen dizinde koleksiyona StateManagedCollection bir öğe ekler.

(Devralındığı yer: StateManagedCollection)
IList.IsFixedSize

Koleksiyonun sabit bir boyuta StateManagedCollection sahip olup olmadığını belirten bir değer alır. Bu yöntem her durumda döndürür false .

(Devralındığı yer: StateManagedCollection)
IList.IsReadOnly

Koleksiyonun StateManagedCollection salt okunur olup olmadığını belirten bir değer alır.

(Devralındığı yer: StateManagedCollection)
IList.Item[Int32]

IStateManager Belirtilen dizindeki öğesini alır.

(Devralındığı yer: StateManagedCollection)
IList.Remove(Object)

Belirtilen nesnenin ilk oluşumunu koleksiyondan StateManagedCollection kaldırır.

(Devralındığı yer: StateManagedCollection)
IList.RemoveAt(Int32)

Belirtilen dizindeki IStateManager öğesini kaldırır.

(Devralındığı yer: StateManagedCollection)
IStateManager.IsTrackingViewState

Koleksiyonun StateManagedCollection görünüm durumundaki değişiklikleri kaydedip kaydetmediğini belirten bir değer alır.

(Devralındığı yer: StateManagedCollection)
IStateManager.LoadViewState(Object)

Koleksiyonun ve IStateManager içerdiği öğelerin önceden kaydedilmiş görünüm durumunu StateManagedCollection geri yükler.

(Devralındığı yer: StateManagedCollection)
IStateManager.SaveViewState()

Sayfa sunucuya geri gönderildiğinden StateManagedCollection beri koleksiyonda ve içerdiği her IStateManager nesnede yapılan değişiklikleri kaydeder.

(Devralındığı yer: StateManagedCollection)
IStateManager.TrackViewState()

Koleksiyonun StateManagedCollection ve içerdiği nesnelerin her birinin IStateManager görünüm durumlarındaki değişiklikleri izlemesine neden olur, böylece aynı sayfaya yönelik istekler arasında kalıcı hale gelebilirler.

(Devralındığı yer: StateManagedCollection)

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.