Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

MenuItemBinding classe

 

Date de publication : novembre 2016

Définit la relation entre un élément de données et l’élément de menu auquel il est lié dans un contrôle Menu. Cette classe ne peut pas être héritée.

Espace de noms:   System.Web.UI.WebControls
Assembly:  System.Web (dans System.Web.dll)

System.Object
  System.Web.UI.WebControls.MenuItemBinding

public sealed class MenuItemBinding : IStateManager, ICloneable, 
	IDataSourceViewSchemaAccessor

NomDescription
System_CAPS_pubmethodMenuItemBinding()

Initialise une nouvelle instance de la classe MenuItemBinding.

NomDescription
System_CAPS_pubpropertyDataMember

Obtient ou définit le membre de données à lier à un élément de menu.

System_CAPS_pubpropertyDepth

Obtient ou définit la profondeur de menu à laquelle le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyEnabled

Obtient ou définit une valeur qui indique si l’élément de menu auquel le MenuItemBinding objet est appliqué est activé, ce qui permet à l’élément pour afficher une image contextuelle et tous les enfants des éléments de menu.

System_CAPS_pubpropertyEnabledField

Obtient ou définit le nom du champ de la source de données à lier à la Enabled propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyFormatString

Obtient ou définit la chaîne qui spécifie le format d’affichage du texte d’un élément de menu auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyImageUrl

Obtient ou définit l’URL vers une image qui s’affiche en regard du texte d’un élément de menu auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyImageUrlField

Obtient ou définit le nom du champ de la source de données à lier à la ImageUrl propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyNavigateUrl

Obtient ou définit l’URL à atteindre lorsqu’un élément de menu auquel le MenuItemBinding objet est appliqué est cliqué.

System_CAPS_pubpropertyNavigateUrlField

Obtient ou définit le nom du champ de la source de données à lier à la NavigateUrl propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyPopOutImageUrl

Obtient ou définit l’URL vers une image qui indique la présence d’un sous-menu dynamique pour un élément de menu auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyPopOutImageUrlField

Obtient ou définit le nom du champ de la source de données à lier à la PopOutImageUrl propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertySelectable

Obtient ou définit une valeur qui indique si l’élément de menu auquel le MenuItemBinding objet est appliqué peut être sélectionné, ou est « interactif ».

System_CAPS_pubpropertySelectableField

Obtient ou définit le nom du champ de la source de données à lier à la Selectable propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertySeparatorImageUrl

Obtient ou définit l’URL vers une image affichée au-dessous du texte d’un élément de menu (pour le séparer des autres éléments de menu) pour un élément de menu auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertySeparatorImageUrlField

Obtient ou définit le nom du champ de la source de données à lier à la SeparatorImageUrl propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyTarget

Obtient ou définit la fenêtre ou frame cible dans lequel afficher le contenu de la page Web associé à un élément de menu auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyTargetField

Obtient ou définit le nom du champ de la source de données à lier à la Target propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyText

Obtient ou définit le texte affiché pour l’élément de menu auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyTextField

Obtient ou définit le nom du champ de la source de données à lier à la Text propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyToolTip

Obtient ou définit le texte info-bulle pour un élément de menu auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyToolTipField

Obtient ou définit le nom du champ de la source de données à lier à la ToolTip propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

System_CAPS_pubpropertyValue

Obtient ou définit une valeur non affichée utilisée pour stocker des données supplémentaires sur un élément de menu auquel le MenuItemBinding objet est appliqué, telles que les données utilisées pour gérer les événements de publication.

System_CAPS_pubpropertyValueField

Obtient ou définit le nom du champ de la source de données à lier à la Value propriété d’un MenuItem objet auquel le MenuItemBinding objet est appliqué.

NomDescription
System_CAPS_pubmethodEquals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.(Hérité de Object.)

System_CAPS_pubmethodGetHashCode()

Fait office de fonction de hachage par défaut.(Hérité de Object.)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente l'objet actuel.(Remplace Object.ToString().)

NomDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethodICloneable.Clone()

Cette API prend en charge l’infrastructure de produit et n’est pas destinée à être utilisée directement depuis votre code. Crée une copie de la MenuItemBinding objet.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStateManager.LoadViewState(Object)

Charge du nœud précédemment enregistré l’état d’affichage.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStateManager.SaveViewState()

Cette API prend en charge l’infrastructure de produit et n’est pas destinée à être utilisée directement depuis votre code. Enregistre les modifications d’état à la vue un Object.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStateManager.TrackViewState()

Cette API prend en charge l’infrastructure de produit et n’est pas destinée à être utilisée directement depuis votre code. Fait en sorte que le MenuItemBinding objet à suivre les modifications apportées à son état d’affichage.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIDataSourceViewSchemaAccessor.DataSourceViewSchema

Pour obtenir une description de ce membre, consultez DataSourceViewSchema.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIStateManager.IsTrackingViewState

Cette API prend en charge l’infrastructure de produit et n’est pas destinée à être utilisée directement depuis votre code. Obtient une valeur qui indique si le MenuItemBinding objet enregistre les modifications apportées à son état d’affichage.

Lorsque la Menu contrôle est lié à une source de données où chaque élément de données contient plusieurs champs (par exemple, un élément XML avec plusieurs attributs), si aucune liaison d’élément de menu n’est défini, 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. Dans le cas d’un élément XML, l’élément de menu affiche le nom d’élément, lequel affiche la structure sous-jacente du menu, mais n’est pas très utile. Vous pouvez lier les propriétés d’un élément de menu à un champ spécifique en spécifiant des liaisons d’éléments de menu. Un MenuItemBinding objet définit la relation entre chaque élément de données et l’élément de menu auquel il est lié.

System_CAPS_noteRemarque

Lorsque la Menu contrôle est lié à un SiteMapDataSource (contrôle), liaison d’élément de menu n’ont aucun effet. Liaison est effectuée automatiquement à l’aide du fournisseur de plan de site.

Le Menu contrôle stocke ses MenuItemBinding des objets dans le DataBindings propriété et applique les liaisons à la source de données pour créer une relation entre la hiérarchie des menus et la hiérarchie de source de données. Pour chaque élément de données dans la source de données, la Menu contrôle essaie de correspondre à l’élément de données à un MenuItemBinding objet à créer correspondants MenuItem objet.

Lorsque vous créez un MenuItemBinding de l’objet, vous devez spécifier les critères de liaison. Les critères indiquent le moment où un élément de données doit être lié à un élément de menu. Vous pouvez spécifier le Depth, le DataMember, ou les deux.

Une profondeur d’élément de menu spécifie le niveau de menu qui est lié. Par exemple, les éléments suivants MenuItemBinding déclaration lie les champs nom et l’ID de la source de données à le Text et Value Propriétés, respectivement, de tous les nœuds avec une profondeur de 0 :

<asp:MenuItemBinding Depth="0" TextField="Name" ValueField="ID">

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 ils peut représenter des informations différentes selon la source de données. Chaque élément de données dans une source de données hiérarchique (représenté par une IHierarchyData objet) expose un Type propriété qui spécifie le type de l’élément de données. Par exemple, le membre de données pour un élément XML spécifie le nom de l’élément. Lorsqu’une source de données contient plusieurs types d’éléments de données, le membre de données spécifie les données d’élément de type à utiliser. Les éléments suivants MenuItemBinding déclaration lie le <Book> éléments d’un XmlDataSource contrôle à tous les éléments de menu dans le menu, quel que soit l’emplacement dans la hiérarchie :

<asp:MenuItemBinding DataMember="Book" TextField="Title" ValueField= "ISBN">

Vous devrez parfois créer une liaison d’élément de menu qui spécifie à la fois une profondeur et un membre de données. Ceci est souvent utilisé lorsque la source de données contient des éléments à différents niveaux qui ont la même valeur de membre de données. Par exemple, vous pouvez avoir <Item> les éléments qui apparaissent à différents niveaux au sein d’un fichier XML. Les éléments suivants MenuItemBinding déclarations montrent comment spécifier des liaisons d’éléments de menu qui s’appliquent à des données identiques de membres à des profondeurs de menu différentes :

<asp:MenuItemBinding DataMember="Item" Depth="1" TextField="Title">

<asp:MenuItemBinding DataMember="Item" Depth="2" TextField="ISBN">

Si une liaison d’élément de menu est définie sans une profondeur et une donnée membre, la liaison d’élément de menu est appliquée à tous les éléments de menu dans le menu. Elle est couramment utilisée lorsque toutes les données ont les mêmes propriétés et doivent être affichées de façon identique, quelle que soit la profondeur de menu.

Une fois les critères de liaison sont établis, vous pouvez ensuite lier une propriété d’un MenuItem objet qui peut être liée à une valeur. Vous pouvez lier à un champ d’un élément de données ou à une valeur statique. Lorsqu’il est lié à une valeur statique, tous les MenuItem objets auxquels le MenuItemBinding objet est appliqué partagent la même valeur. Les propriétés liées aux champs contiennent les valeurs du champ correspondant de la source de données.

System_CAPS_noteRemarque

Vous pouvez substituer sélectivement une propriété liée dans un MenuItem objet en définissant la propriété correspondante directement.

Le tableau suivant répertorie les propriétés de la MenuItemBinding classe qui vous permettent de lier une propriété de le MenuItem l’objet à un champ d’un élément de données.

Propriété

Description

ImageUrlField

Le champ à lier à la ImageUrl propriété d’un MenuItem objet.

NavigateUrlField

Le champ à lier à la NavigateUrl propriété d’un MenuItem objet.

TextField

Le champ à lier à la Text propriété d’un MenuItem objet.

ToolTipField

Le champ à lier à la ToolTip propriété d’un MenuItem objet.

ValueField

Le champ à lier à la Value propriété d’un MenuItem objet.

Le tableau suivant répertorie les propriétés de la MenuItemBinding classe qui vous permettent de lier une propriété de la MenuItem objet avec une valeur statique.

Propriété

Description

ImageUrl

La valeur statique à lier à la ImageUrl propriété d’un MenuItem objet.

NavigateUrl

La valeur statique à lier à la NavigateUrl propriété d’un MenuItem objet.

Target

La valeur statique à lier à la Target propriété d’un MenuItem objet.

Text

La valeur statique à lier à la Text propriété d’un MenuItem objet.

ToolTip

La valeur statique à lier à la ToolTip propriété d’un MenuItem objet.

Value

La valeur statique à lier à la Value propriété d’un MenuItem objet.

Si le conflit MenuItemBinding objets sont définis, le Menu contrôle applique les liaisons d’éléments de menu dans l’ordre de priorité suivant :

  1. Le MenuItemBinding objet qui définit et correspond une profondeur et une donnée membre.

  2. Le MenuItemBinding objet qui définit et correspond à la donnée membre uniquement.

  3. Le MenuItemBinding objet qui définit et correspond à la profondeur uniquement.

  4. Le MenuItemBinding objet qui définit la profondeur, ni le membre de données. (Ce type de liaison d’élément de menu est appliqué à tous les éléments de menu dans le menu).

  5. Le MenuItemBinding objet qui n’a pas de correspondance dans la source de données. Dans ce cas, la valeur retournée par la ToString() méthode de l’élément de données est ensuite lié à la Text et Value Propriétés des éléments de menu dans lequel le MenuItemBinding objet est appliqué.

La MenuItemBinding classe vous permet également de mettre en forme le texte affiché dans un élément de menu en définissant le FormatString propriété.

L’exemple de code suivant montre comment utiliser MenuItemBinding objets pour définir la relation entre les champs d’un XmlDataSource contrôle et les éléments de menu dans un Menu contrôle. Pour cet exemple fonctionne correctement, vous devez copier les données XML ci-dessous dans un fichier nommé Menu.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>MenuItemBinding Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>MenuItemBinding Example</h3>

      <asp:menu id="NavigationMenu"
        datasourceid="MenuSource"
        runat="server">

        <DataBindings>

          <asp:menuitembinding datamember="MapHomeNode"
            formatstring="({0})" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_self" />
          <asp:menuitembinding datamember="MapNode" 
            depth="1"
            formatstring="[{0}]" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="2"
            formatstring="<{0}>" 
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>

        </DataBindings>

      </asp:menu>

      <asp:xmldatasource id="MenuSource"
        datafile="Menu.xml"
        runat="server"/> 

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

Le code suivant est données sitemap d’exemple pour l’exemple précédent.

<MapHomeNode ImageUrl="~\Images\Home.gif"

Title="Home"

Description="Root Page"

ToolTip="Home Page">

<MapNode ImageUrl="~\Images\Music.gif"

Title="Music"

Description="Music Category"

ToolTip="Music Page">

<MapNode ImageUrl="~\Images\Classical.gif"

Title="Classical"

Description="Classical Section"

ToolTip="Classical Page"/>

<MapNode ImageUrl="~\Images\Rock.gif"

Title="Rock"

Description="Rock Section"

ToolTip="Rock Page"/>

<MapNode ImageUrl="~\Images\Jazz.gif"

Title="Jazz"

Description="Jazz Section"

ToolTip="Jazz Page"/>

</MapNode>

<MapNode ImageUrl="~\Images\Movies.gif"

Title="Movies"

Description="Movies Category"

ToolTip="Movies Page">

<MapNode ImageUrl="~\Images\Action.gif"

Title="Action"

Description="Action Section"

ToolTip="Action Page"/>

<MapNode ImageUrl="~\Images\Drama.gif"

Title="Drama"

Description="Drama Section"

ToolTip="Drama Page"/>

<MapNode ImageUrl="~\Images\Musical.gif"

Title="Musical"

Description="Musical Section"

ToolTip="Musical Page"/>

</MapNode>

</MapHomeNode>

.NET Framework
Disponible depuis 2.0

Tous les membres statiques publics ( Shared en Visual Basic) de ce type sont thread-safe. Les membres d’instance n’ont pas la garantie d’être thread-safe.

Retour au début
Afficher: