TreeNodeBindingCollection Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
A vezérlőelem objektumgyűjteményét TreeNodeBindingTreeView jelöli. Ez az osztály nem örökölhető.
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
- Öröklődés
Példák
Ez a szakasz két példakódot tartalmaz. Az első példakód bemutatja, hogyan lehet deklaratívan feltölteni egy TreeNodeBindingCollection objektumot. A második példakód bemutatja, hogyan lehet programozott módon feltölteni egy objektumot TreeNodeBindingCollection .
Az alábbi példakód bemutatja, hogyan lehet deklaratívan feltölteni egy TreeNodeBindingCollection objektumot. Ahhoz, hogy ez a példa megfelelően működjön, át kell másolnia a szakasz végén található XML-adatokat egy Book.xmlnevű fájlba.
<%@ 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>
Az alábbi példakód bemutatja, hogyan lehet programozott módon feltölteni egy objektumot TreeNodeBindingCollection . Ahhoz, hogy ez a példa megfelelően működjön, a szakasz végén található XML-mintaadatokat egy Book.xmlnevű fájlba kell másolnia.
<%@ 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>
A fenti példakódok XML-adatai a következők.
<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>
Megjegyzések
Az TreeNodeBindingCollection osztály objektumgyűjtemények TreeNodeBinding tárolására és kezelésére szolgál a TreeView vezérlőben. A TreeView vezérlő az osztályt használja a TreeNodeBindingCollection tulajdonságához DataBindings .
A DataBindings tulajdonság olyan objektumokat tartalmaz TreeNodeBinding , amelyek meghatározzák az adatelem és a csomópont közötti kapcsolatot, amelyhez kötést fűz. Ha olyan adatforráshoz köt, amelyben minden adatelem több tulajdonságot tartalmaz (például egy XML-elemet több attribútummal), a csomópont alapértelmezés szerint megjeleníti az ToString adatelem metódusa által visszaadott értéket. XML-elem esetén a csomópont megjeleníti az elem nevét, amely a fa mögöttes szerkezetét mutatja, máskülönben azonban nem túl hasznos. A csomópontokat egy adott adatelem-tulajdonsághoz kötheti facsomópont-kötések megadásával. Bár a DataBindings gyűjtemény programozott módon is kitölthető, általában deklaratív módon van beállítva.
A facsomópont-kötések deklaratív beállítása:
A vezérlő nyitó és záró címkéi közé ágyazhatja be a nyitó és a záró
<DataBindings>címkéket TreeView .Helyezze
<asp:TreeNodeBinding>az elemeket a megnyitni kívánt csomópontkötések nyitó és záró<DataBindings>címkéi közé.
Objektumok hozzáadásával és eltávolításával TreeNodeBindingCollection programozott módon kezelheti TreeNodeBinding a fájlokat. Ha objektumot TreeNodeBinding szeretne hozzáadni a gyűjteményhez, használja a vagy Add a metódustInsert. A csomópontok gyűjteményből való eltávolításához használja az Remove, RemoveAtvagy StateManagedCollection.Clear metódust.
Az TreeNodeBindingCollection osztály számos módon támogatja a gyűjtemény elemeinek elérését:
Item[] Az indexelővel közvetlenül lekérhet egy TreeNode objektumot egy adott nulla alapú indexben.
StateManagedCollection.GetEnumerator A metódussal létrehozhat egy enumerátort, amely a gyűjteményen keresztüli iteráláshoz használható.
Tulajdonságok
| Név | Description |
|---|---|
| Count |
Lekéri a gyűjteményben StateManagedCollection található elemek számát. (Öröklődés forrása StateManagedCollection) |
| Item[Int32] |
Lekéri vagy beállítja az TreeNodeBinding objektumot az objektum megadott indexén TreeNodeBindingCollection . |
Metódusok
| Név | Description |
|---|---|
| Add(TreeNodeBinding) |
Hozzáfűzi a megadott TreeNodeBinding objektumot az TreeNodeBindingCollection objektum végéhez. |
| Clear() |
Eltávolítja az összes elemet a StateManagedCollection gyűjteményből. (Öröklődés forrása StateManagedCollection) |
| Contains(TreeNodeBinding) |
Meghatározza, hogy a megadott TreeNodeBinding objektum szerepel-e a gyűjteményben. |
| CopyTo(Array, Int32) |
A gyűjtemény elemeit StateManagedCollection egy tömbbe másolja egy adott tömbindextől kezdve. (Öröklődés forrása StateManagedCollection) |
| CopyTo(TreeNodeBinding[], Int32) |
Az objektum összes TreeNodeBindingCollection elemét TreeNodeBinding átmásolja egy kompatibilis, egydimenziós objektumtömbbe, a céltömb megadott indexétől kezdve. |
| CreateKnownType(Int32) |
Ha felül van bírálva egy származtatott osztályban, létrehoz egy példányt egy implementált osztályból IStateManager. A létrehozott objektum típusa a metódus által GetKnownTypes() visszaadott gyűjtemény megadott tagján alapul. (Öröklődés forrása StateManagedCollection) |
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetEnumerator() |
Egy iterátort ad vissza, amely a StateManagedCollection gyűjteményen keresztül iterál. (Öröklődés forrása StateManagedCollection) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetKnownTypes() |
Ha felül van bírálva egy származtatott osztályban, lekéri a gyűjtemény által tartalmazhatott típusokat IStateManager tartalmazó tömbötStateManagedCollection. (Öröklődés forrása StateManagedCollection) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| IndexOf(TreeNodeBinding) |
Meghatározza a gyűjteményben megadott TreeNodeBinding objektum indexét. |
| Insert(Int32, TreeNodeBinding) |
Beszúrja a megadott TreeNodeBinding objektumot az TreeNodeBindingCollection objektumba a megadott indexhelyen. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| OnClear() |
Ha egy származtatott osztályban felül van bírálva, további munkát végez, mielőtt a metódus eltávolítja az Clear() összes elemet a gyűjteményből. (Öröklődés forrása StateManagedCollection) |
| OnClearComplete() |
Ha egy származtatott osztályban felül van bírálva, további munkát végez, miután a metódus befejezte az Clear() összes elem eltávolítását a gyűjteményből. (Öröklődés forrása StateManagedCollection) |
| OnInsert(Int32, Object) |
Ha egy származtatott osztályban felül van bírálva, további munkát végez, mielőtt a IList.Insert(Int32, Object) metódus IList.Add(Object) hozzáad egy elemet a gyűjteményhez. (Öröklődés forrása StateManagedCollection) |
| OnInsertComplete(Int32, Object) |
Ha egy származtatott osztályban felül van bírálva, további munkát végez, miután a IList.Insert(Int32, Object) metódus IList.Add(Object) hozzáad egy elemet a gyűjteményhez. (Öröklődés forrása StateManagedCollection) |
| OnRemove(Int32, Object) |
Ha egy származtatott osztályban felül van bírálva, további munkát végez, mielőtt a IList.Remove(Object) metódus IList.RemoveAt(Int32) eltávolítja a megadott elemet a gyűjteményből. (Öröklődés forrása StateManagedCollection) |
| OnRemoveComplete(Int32, Object) |
Ha egy származtatott osztályban felül van bírálva, további munkát végez, miután a vagy IList.Remove(Object) metódus IList.RemoveAt(Int32) eltávolította a megadott elemet a gyűjteményből. (Öröklődés forrása StateManagedCollection) |
| OnValidate(Object) |
Ha egy származtatott osztályban felül van bírálva, ellenőrzi a StateManagedCollection gyűjtemény egy elemét. (Öröklődés forrása StateManagedCollection) |
| Remove(TreeNodeBinding) |
Eltávolítja a megadott TreeNodeBinding objektumot az TreeNodeBindingCollection objektumból. |
| RemoveAt(Int32) |
Eltávolítja az objektumot a TreeNodeBinding megadott indexhelyen az TreeNodeBindingCollection objektumból. |
| SetDirty() |
A teljes StateManagedCollection gyűjteményt szerializálni kell megtekintési állapotba. (Öröklődés forrása StateManagedCollection) |
| SetDirtyObject(Object) |
Ha egy származtatott osztályban felül van bírálva, a gyűjtemény arra utasítja a gyűjteményt |
| ToString() |
Az aktuális objektumot jelképező sztringet ad vissza. (Öröklődés forrása Object) |
Explicit interfész-implementációk
| Név | Description |
|---|---|
| ICollection.Count |
Lekéri a gyűjteményben StateManagedCollection található elemek számát. (Öröklődés forrása StateManagedCollection) |
| ICollection.IsSynchronized |
Beolvas egy értéket, amely jelzi, hogy a StateManagedCollection gyűjtemény szinkronizálva van-e (a szál biztonságos). Ez a módszer minden esetben visszaad |
| ICollection.SyncRoot |
Lekéri a gyűjteményhez StateManagedCollection való hozzáférés szinkronizálására használható objektumot. Ez a módszer minden esetben visszaad |
| IEnumerable.GetEnumerator() |
Egy iterátort ad vissza, amely a StateManagedCollection gyűjteményen keresztül iterál. (Öröklődés forrása StateManagedCollection) |
| IList.Add(Object) |
Hozzáad egy elemet a StateManagedCollection gyűjteményhez. (Öröklődés forrása StateManagedCollection) |
| IList.Clear() |
Eltávolítja az összes elemet a StateManagedCollection gyűjteményből. (Öröklődés forrása StateManagedCollection) |
| IList.Contains(Object) |
Meghatározza, hogy a StateManagedCollection gyűjtemény tartalmaz-e egy adott értéket. (Öröklődés forrása StateManagedCollection) |
| IList.IndexOf(Object) |
Meghatározza egy adott elem indexét a StateManagedCollection gyűjteményben. (Öröklődés forrása StateManagedCollection) |
| IList.Insert(Int32, Object) |
Beszúr egy elemet a StateManagedCollection gyűjteménybe a megadott indexen. (Öröklődés forrása StateManagedCollection) |
| IList.IsFixedSize |
Beolvas egy értéket, amely jelzi, hogy a StateManagedCollection gyűjtemény rögzített méretű-e. Ez a módszer minden esetben visszaad |
| IList.IsReadOnly |
Beolvas egy értéket, amely jelzi, hogy a StateManagedCollection gyűjtemény írásvédett-e. (Öröklődés forrása StateManagedCollection) |
| IList.Item[Int32] |
Lekéri az IStateManager elemet a megadott indexhez. (Öröklődés forrása StateManagedCollection) |
| IList.Remove(Object) |
Eltávolítja a megadott objektum első előfordulását a StateManagedCollection gyűjteményből. (Öröklődés forrása StateManagedCollection) |
| IList.RemoveAt(Int32) |
Eltávolítja az IStateManager elemet a megadott indexből. (Öröklődés forrása StateManagedCollection) |
| IStateManager.IsTrackingViewState |
Beolvas egy értéket, amely jelzi, hogy a StateManagedCollection gyűjtemény menti-e a nézetállapot módosításait. (Öröklődés forrása StateManagedCollection) |
| IStateManager.LoadViewState(Object) |
Visszaállítja a gyűjtemény korábban mentett nézetállapotát StateManagedCollection és a IStateManager benne lévő elemeket. (Öröklődés forrása StateManagedCollection) |
| IStateManager.SaveViewState() |
Menti a StateManagedCollection gyűjtemény módosításait és az általa tartalmazott objektumokat IStateManager a lap kiszolgálóra való visszatérése óta. (Öröklődés forrása StateManagedCollection) |
| IStateManager.TrackViewState() |
StateManagedCollection A gyűjtemény és az IStateManager összes benne lévő objektum nyomon követi a nézetállapot változásait, hogy az ugyanazon lapra vonatkozó kérések között is megmaradhassanak. (Öröklődés forrása StateManagedCollection) |
Bővítő metódusok
| Név | Description |
|---|---|
| AsParallel(IEnumerable) |
Lehetővé teszi a lekérdezés párhuzamosítását. |
| AsQueryable(IEnumerable) |
Átalakítja az egyiket IEnumerableIQueryable. |
| Cast<TResult>(IEnumerable) |
Egy elem elemeit IEnumerable a megadott típusra veti. |
| OfType<TResult>(IEnumerable) |
Egy adott típus alapján szűri IEnumerable egy adott elem elemeit. |