Menu.DataBindings Propriété

Définition

Obtient une collection d’objets MenuItemBinding qui définissent la relation entre un élément de données et l’élément de menu auquel il est lié.Gets a collection of MenuItemBinding objects that define the relationship between a data item and the menu item it is binding to.

public:
 property System::Web::UI::WebControls::MenuItemBindingCollection ^ DataBindings { System::Web::UI::WebControls::MenuItemBindingCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public System.Web.UI.WebControls.MenuItemBindingCollection DataBindings { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.DataBindings : System.Web.UI.WebControls.MenuItemBindingCollection
Public ReadOnly Property DataBindings As MenuItemBindingCollection

Valeur de propriété

MenuItemBindingCollection

MenuItemBindingCollection qui représente la relation entre un élément de données et l'élément de menu auquel il est lié.A MenuItemBindingCollection that represents the relationship between a data item and the menu item it is binding to.

Attributs

Exemples

L’exemple de code suivant montre comment utiliser la DataBindings collection pour définir la relation entre les champs d’un XmlDataSource contrôle et les éléments de menu d’un Menu contrôle.The following code example demonstrates how to use the DataBindings collection to define the relationship between the fields of an XmlDataSource control and the menu items in a Menu control. Pour que cet exemple fonctionne correctement, vous devez copier les exemples de données XML ci-dessous dans un fichier nommé Map.xml.For this example to work correctly, you must copy the sample XML data below to a file named Map.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>Menu DataBindings Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>Menu DataBindings Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="1"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">
        
       <DataBindings>
        
          <asp:menuitembinding datamember="MapHomeNode" 
            depth="0"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="1"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="2"
            textfield="title" 
            navigateurlfield="url"/>
        </DataBindings>
        
      </asp:menu>
      
      <asp:XmlDataSource id="MenuSource"
        datafile="Map.xml"
        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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>Menu DataBindings Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>Menu DataBindings Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="1"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">
        
        <DataBindings>
          <asp:menuitembinding datamember="MapHomeNode" 
            depth="0"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="1"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="2"
            textfield="title" 
            navigateurlfield="url"/>
        </DataBindings>
        
      </asp:menu>
      
      <asp:XmlDataSource id="MenuSource"
        datafile="Map.xml"
        runat="server"/>        

    </form>
  </body>
</html>

Voici des exemples de données de plan de site pour l’exemple précédent.The following is sample site map data for the previous example.

<MapHomeNode url="~\Home.aspx"   
  title="Home"  
  description="Home">  
  <MapNode url="~\Music.aspx"  
    title="Music"  
    description="Music">  
    <MapNode url="~\Classical.aspx"   
      title="Classical"  
      description="Classical"/>  
    <MapNode url="~\Rock.aspx"  
      title="Rock"  
      description="Rock"/>  
    <MapNode url="~\Jazz.aspx"  
      title="Jazz"  
      description="Jazz"/>  
  </MapNode>  
  <MapNode url="~\Movies.aspx"  
    title="Movies"  
    description="Movies">  
    <MapNode url="~\Action.aspx"  
      title="Action"  
      description="Action"/>  
    <MapNode url="~\Drama.aspx"  
      title="Drama"  
      description="Drama"/>  
    <MapNode url="~\Musical.aspx"  
      title="Musical"  
      description="Musical"/>  
  </MapNode>  
</MapHomeNode>  

Remarques

La DataBindings collection contient des MenuItemBinding objets qui définissent la relation entre un élément de données et l’élément de menu auquel il est lié.The DataBindings collection contains MenuItemBinding objects that define the relationship between a data item and the menu item it is binding to. Lors de la liaison à une source de données où chaque élément de données contient plusieurs propriétés (par exemple, un élément XML avec plusieurs attributs), un élément de menu affiche la valeur retournée par la ToString() méthode de l’élément de données par défaut.When binding to a data source where each data item contains multiple properties (such as an XML element with several attributes), a menu item displays the value returned by the ToString() method of the data item by default. Dans le cas d’un élément XML, l’élément de menu affiche le nom de l’élément, qui affiche la structure sous-jacente de l’arborescence, mais n’est pas très utile dans le cas contraire.In the case of an XML element, the menu item displays the element name, which shows the underlying structure of the tree, but is not very useful otherwise. Vous pouvez lier un élément de menu à une propriété d’élément de données spécifique en spécifiant des liaisons d’élément de menu.You can bind a menu item to a specific data item property by specifying menu item bindings.

Lorsque vous définissez la relation entre un élément de données et un élément de menu, vous devez spécifier à la fois les critères de liaison et la propriété d’un élément de données à lier.When defining the relationship between a data item and a menu item, you must specify both the criteria for binding and the property of a data item to bind to. Les critères indiquent quand un élément de données doit être lié à un élément de menu.The criteria indicate when a data item should be bound to a menu item. Les critères peuvent être spécifiés avec une profondeur, un membre de données, ou les deux.The criteria can be specified with a depth, a data member, or both. La profondeur spécifie le niveau de menu qui est lié.The depth specifies the menu level that gets bound. Par exemple, si vous spécifiez une profondeur de 0, tous les éléments de menu de l’arborescence au niveau 0 sont liés à l’aide de la liaison d’élément de menu.For example, if you specify a depth of 0, all menu items in the tree structure at level 0 are bound using the menu item binding. Un membre de données spécifie le type de l’élément de données dans la source de données sous-jacente, mais peut représenter des informations différentes en fonction de la source de données.A data member specifies the type of the data item in the underlying data source, but can represent different information depending on the data source. Par exemple, le membre de données d’un élément XML spécifie le nom de l’élément.For example, the data member for an XML element specifies the name of the element.

Si plusieurs MenuItemBinding objets sont définis et sont en conflit les uns avec les autres, le Menu contrôle applique les liaisons d’élément de menu dans l’ordre de priorité suivant :If multiple MenuItemBinding objects are defined that conflict with each other, the Menu control applies the menu item bindings in the following order of precedence:

  1. MenuItemBindingObjet qui définit à la fois une profondeur et un membre de données.The MenuItemBinding object that defines both a depth and a data member.

  2. MenuItemBindingObjet qui définit uniquement la profondeur.The MenuItemBinding object that defines only the depth.

  3. MenuItemBindingObjet qui définit uniquement le membre de données.The MenuItemBinding object that defines only the data member.

  4. MenuItemBindingObjet qui ne définit ni la profondeur ni la donnée membre.The MenuItemBinding object that defines neither the depth nor the data member.

Une fois les critères de liaison établis, vous pouvez lier une propriété d’un MenuItem objet qui peut être lié à un attribut ou à un champ d’un élément de données.Once the binding criteria are established, you can then bind a property of a MenuItem object that is able to be bound to an attribute or field of a data item. Par exemple, vous pouvez lier la Text propriété d’un élément de menu à l’attribut Text sur un élément XML en définissant la TextField propriété d’un MenuItemBinding objet.For example, you can bind the Text property of a menu item to the text attribute on an XML element by setting the TextField property of a MenuItemBinding object. Vous pouvez également effectuer une liaison à une valeur statique.You can also bind to a static value. Si vous définissez la Text propriété d’un MenuItemBinding objet, tous les éléments de menu auxquels l' MenuItemBinding objet est appliqué partagent la même valeur de texte statique.If you set the Text property of a MenuItemBinding object, all menu items to which the MenuItemBinding object is applied share the same static text value. Pour plus d’informations sur la liaison des propriétés d’un MenuItem objet à une valeur, consultez MenuItemBinding .For more information on binding the properties of a MenuItem object to a value, see MenuItemBinding.

Bien que la DataBindings collection puisse être remplie par programmation, elle est généralement définie de manière déclarative.Although the DataBindings collection can be programmatically populated, it is usually set declaratively. Pour spécifier les liaisons d’élément de menu, commencez par imbriquer les <DataBindings> balises d’ouverture et de fermeture entre les balises d’ouverture et de fermeture du Menu contrôle.To specify the menu item bindings, first nest opening and closing <DataBindings> tags between the opening and closing tags of the Menu control. Placez ensuite <asp:MenuItemBinding> les éléments entre les <DataBindings> balises d’ouverture et de fermeture pour chaque liaison d’élément de menu que vous souhaitez spécifier.Next, place <asp:MenuItemBinding> elements between the opening and closing <DataBindings> tags for each menu item binding you want to specify.

S’applique à

Voir aussi