TreeNodeBindingCollection Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente une collection d’objets TreeNodeBinding dans le TreeView contrôle. Cette classe ne peut pas être héritée.
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
- Héritage
Exemples
Cette section contient deux exemples de code. Le premier exemple de code montre comment remplir un TreeNodeBindingCollection objet de manière déclarative. Le deuxième exemple de code montre comment remplir un TreeNodeBindingCollection objet par programmation.
L’exemple de code suivant montre comment remplir un TreeNodeBindingCollection objet de manière déclarative. Pour que cet exemple fonctionne correctement, vous devez copier les données XML situées à la fin de cette section dans un fichier appelé Book.xml.
<%@ 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>
L’exemple de code suivant montre comment remplir un TreeNodeBindingCollection objet par programmation. Pour que cet exemple fonctionne correctement, vous devez copier l’exemple de données XML situées à la fin de cette section dans un fichier appelé Book.xml.
<%@ 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>
Voici les données XML des exemples de code précédents.
<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>
Remarques
La TreeNodeBindingCollection classe est utilisée pour stocker et gérer une collection d’objets TreeNodeBinding dans le TreeView contrôle. Le TreeView contrôle utilise la TreeNodeBindingCollection classe pour sa DataBindings propriété.
La DataBindings propriété contient des TreeNodeBinding objets qui définissent la relation entre un élément de données et le nœud auquel elle est liée. Lors de la liaison à une source de données où chaque élément de données contient plusieurs propriétés (comme un élément XML avec plusieurs attributs), un nœud affiche la valeur retournée par la ToString méthode de l’élément de données, par défaut. Dans le cas d’un élément XML, le nœud affiche le nom de l’élément, qui affiche la structure sous-jacente de l’arborescence, mais n’est pas très utile sinon. Vous pouvez lier un nœud à une propriété d’élément de données spécifique en spécifiant des liaisons de nœud d’arborescence. Bien que la DataBindings collection puisse être renseignée par programmation, elle est généralement définie de manière déclarative.
Pour définir les liaisons de nœud d’arborescence de manière déclarative :
Imbriquez les balises d’ouverture et de fermeture
<DataBindings>entre les balises d’ouverture et de fermeture du TreeView contrôle.Placez
<asp:TreeNodeBinding>les éléments entre les balises d’ouverture et de fermeture<DataBindings>pour chaque liaison de nœud d’arbre que vous souhaitez spécifier.
Vous pouvez gérer par programmation un TreeNodeBindingCollection en ajoutant et en supprimant des TreeNodeBinding objets. Pour ajouter un TreeNodeBinding objet à la collection, utilisez le ou Insert la Add méthode. Pour supprimer des nœuds de la collection, utilisez le , RemoveAtou StateManagedCollection.Clear la Removeméthode.
La TreeNodeBindingCollection classe prend en charge plusieurs façons d’accéder aux éléments de la collection :
Utilisez l’indexeur Item[] pour récupérer un TreeNode objet directement à un index de base zéro spécifique.
Utilisez la StateManagedCollection.GetEnumerator méthode pour créer un énumérateur qui peut être utilisé pour itérer dans la collection.
Propriétés
| Nom | Description |
|---|---|
| Count |
Obtient le nombre d’éléments contenus dans la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| Item[Int32] |
Obtient ou définit l’objet TreeNodeBinding à l’index spécifié dans l’objet TreeNodeBindingCollection . |
Méthodes
| Nom | Description |
|---|---|
| Add(TreeNodeBinding) |
Ajoute l’objet spécifié TreeNodeBinding à la fin de l’objet TreeNodeBindingCollection . |
| Clear() |
Supprime tous les éléments de la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| Contains(TreeNodeBinding) |
Détermine si l’objet spécifié TreeNodeBinding se trouve dans la collection. |
| CopyTo(Array, Int32) |
Copie les éléments de la StateManagedCollection collection dans un tableau, en commençant par un index de tableau particulier. (Hérité de StateManagedCollection) |
| CopyTo(TreeNodeBinding[], Int32) |
Copie tous les éléments de l’objet TreeNodeBindingCollection vers un tableau unidimensionnel compatible d’objets TreeNodeBinding , en commençant à l’index spécifié dans le tableau cible. |
| CreateKnownType(Int32) |
En cas de substitution dans une classe dérivée, crée une instance d’une classe qui implémente IStateManager. Le type d’objet créé est basé sur le membre spécifié de la collection retournée par la GetKnownTypes() méthode. (Hérité de StateManagedCollection) |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetEnumerator() |
Retourne un itérateur qui itère dans la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetKnownTypes() |
En cas de substitution dans une classe dérivée, obtient un tableau de IStateManager types que la StateManagedCollection collection peut contenir. (Hérité de StateManagedCollection) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| IndexOf(TreeNodeBinding) |
Détermine l’index de l’objet spécifié TreeNodeBinding dans la collection. |
| Insert(Int32, TreeNodeBinding) |
Insère l’objet spécifié TreeNodeBinding dans l’objet TreeNodeBindingCollection à l’emplacement d’index spécifié. |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| OnClear() |
En cas de substitution dans une classe dérivée, effectue un travail supplémentaire avant que la Clear() méthode supprime tous les éléments de la collection. (Hérité de StateManagedCollection) |
| OnClearComplete() |
En cas de substitution dans une classe dérivée, effectue un travail supplémentaire une fois la Clear() méthode terminée la suppression de tous les éléments de la collection. (Hérité de StateManagedCollection) |
| OnInsert(Int32, Object) |
En cas de substitution dans une classe dérivée, effectue un travail supplémentaire avant l’ajout IList.Insert(Int32, Object)IList.Add(Object) d’un élément à la collection. (Hérité de StateManagedCollection) |
| OnInsertComplete(Int32, Object) |
En cas de substitution dans une classe dérivée, effectue un travail supplémentaire après l’ajout IList.Insert(Int32, Object)IList.Add(Object) d’un élément à la collection. (Hérité de StateManagedCollection) |
| OnRemove(Int32, Object) |
En cas de substitution dans une classe dérivée, effectue un travail supplémentaire avant que la ou IList.RemoveAt(Int32) la IList.Remove(Object) méthode supprime l’élément spécifié de la collection. (Hérité de StateManagedCollection) |
| OnRemoveComplete(Int32, Object) |
En cas de substitution dans une classe dérivée, effectue un travail supplémentaire après la suppression de l’élément IList.Remove(Object)IList.RemoveAt(Int32) spécifié de la collection. (Hérité de StateManagedCollection) |
| OnValidate(Object) |
En cas de substitution dans une classe dérivée, valide un élément de la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| Remove(TreeNodeBinding) |
Supprime l’objet spécifié TreeNodeBinding de l’objet TreeNodeBindingCollection . |
| RemoveAt(Int32) |
Supprime l’objet TreeNodeBinding à l’emplacement d’index spécifié de l’objet TreeNodeBindingCollection . |
| SetDirty() |
Force la sérialisation de l’ensemble StateManagedCollection de la collection dans l’état d’affichage. (Hérité de StateManagedCollection) |
| SetDirtyObject(Object) |
En cas de substitution dans une classe dérivée, indique à une collection d’enregistrer |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| ICollection.Count |
Obtient le nombre d’éléments contenus dans la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| ICollection.IsSynchronized |
Obtient une valeur indiquant si la StateManagedCollection collection est synchronisée (thread safe). Cette méthode retourne |
| ICollection.SyncRoot |
Obtient un objet qui peut être utilisé pour synchroniser l’accès à la StateManagedCollection collection. Cette méthode retourne |
| IEnumerable.GetEnumerator() |
Retourne un itérateur qui itère dans la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| IList.Add(Object) |
Ajoute un élément à la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| IList.Clear() |
Supprime tous les éléments de la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| IList.Contains(Object) |
Détermine si la StateManagedCollection collection contient une valeur spécifique. (Hérité de StateManagedCollection) |
| IList.IndexOf(Object) |
Détermine l’index d’un élément spécifié dans la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| IList.Insert(Int32, Object) |
Insère un élément dans la collection à l’index StateManagedCollection spécifié. (Hérité de StateManagedCollection) |
| IList.IsFixedSize |
Obtient une valeur indiquant si la StateManagedCollection collection a une taille fixe. Cette méthode retourne |
| IList.IsReadOnly |
Obtient une valeur indiquant si la StateManagedCollection collection est en lecture seule. (Hérité de StateManagedCollection) |
| IList.Item[Int32] |
Obtient l’élément IStateManager à l’index spécifié. (Hérité de StateManagedCollection) |
| IList.Remove(Object) |
Supprime la première occurrence de l’objet spécifié de la StateManagedCollection collection. (Hérité de StateManagedCollection) |
| IList.RemoveAt(Int32) |
Supprime l’élément IStateManager à l’index spécifié. (Hérité de StateManagedCollection) |
| IStateManager.IsTrackingViewState |
Obtient une valeur indiquant si la StateManagedCollection collection enregistre les modifications apportées à son état d’affichage. (Hérité de StateManagedCollection) |
| IStateManager.LoadViewState(Object) |
Restaure l’état d’affichage enregistré précédemment de la StateManagedCollection collection et les IStateManager éléments qu’il contient. (Hérité de StateManagedCollection) |
| IStateManager.SaveViewState() |
Enregistre les modifications apportées à la StateManagedCollection collection et à chaque IStateManager objet qu’elle contient depuis la publication de la page sur le serveur. (Hérité de StateManagedCollection) |
| IStateManager.TrackViewState() |
Provoque la persistance de la StateManagedCollectionIStateManager collection et de chacun des objets qu’elle contient pour suivre les modifications apportées à leur état d’affichage afin qu’elles puissent être conservées dans les requêtes pour la même page. (Hérité de StateManagedCollection) |
Méthodes d’extension
| Nom | Description |
|---|---|
| AsParallel(IEnumerable) |
Active la parallélisation d’une requête. |
| AsQueryable(IEnumerable) |
Convertit un IEnumerableIQueryableen . |
| Cast<TResult>(IEnumerable) |
Convertit les éléments d’un IEnumerable type spécifié. |
| OfType<TResult>(IEnumerable) |
Filtre les éléments d’un IEnumerable type spécifié. |