MenuItemBinding.Depth Eigenschap

Definitie

Hiermee wordt de menudiepte opgehaald of ingesteld waarop het MenuItemBinding object wordt toegepast.

public:
 property int Depth { int get(); void set(int value); };
[System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public int Depth { get; set; }
[System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public int Depth { get; set; }
[<System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Depth : int with get, set
[<System.ComponentModel.TypeConverter("System.Web.UI.Design.WebControls.TreeNodeBindingDepthConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Depth : int with get, set
Public Property Depth As Integer

Waarde van eigenschap

De menudiepte waarop de MenuItemBinding toepassing is toegepast. De standaardwaarde is -1, wat aangeeft dat deze eigenschap niet is ingesteld.

Kenmerken

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u de Depth eigenschap gebruikt om de menudiepte op te geven waarop een MenuItemBinding object moet worden toegepast. Als dit voorbeeld correct werkt, moet u de voorbeeld-XML-gegevens hieronder kopiƫren naar een bestand met de naam MenuDepth.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 Depth Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>MenuItemBinding Depth Example</h3>

      <asp:menu id="NavigationMenu"
        datasourceid="MenuSource"
        runat="server">
        
        <databindings>
        
          <asp:menuitembinding depth="0"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_self" />
          <asp:menuitembinding depth="1"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          <asp:menuitembinding depth="2"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          
        </databindings>
        
      </asp:menu>

      <asp:xmldatasource id="MenuSource"
        datafile="MenuDepth.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>MenuItemBinding Depth Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <h3>MenuItemBinding Depth Example</h3>

      <asp:menu id="NavigationMenu"
        datasourceid="MenuSource"
        runat="server">
        
        <databindings>
        
          <asp:menuitembinding depth="0"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_self" />
          <asp:menuitembinding depth="1"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          <asp:menuitembinding depth="2"
            textfield="Title"
            valuefield="Description"
            imageurlfield="ImageUrl"
            tooltipfield="ToolTip"
            target="_blank"/>
          
        </databindings>
        
      </asp:menu>

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

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

De volgende code is voorbeeld van siteoverzichtsgegevens voor het vorige voorbeeld.

<MapNode 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>

</MapNode>

Opmerkingen

Wanneer u een MenuItemBinding object maakt, moet u de criteria voor binding opgeven. De criteria geven aan wanneer een gegevensitem moet worden gebonden aan een menu-item. U kunt de Depth eigenschap, de DataMember eigenschap of beide opgeven.

Gebruik de Depth eigenschap om de menudiepte op te geven waarop het MenuItemBinding object moet worden toegepast. Met de volgende MenuItemBinding declaratie worden bijvoorbeeld de velden Naam en ID van de gegevensbron gekoppeld aan respectievelijk alle TextValue menu-items met een diepte van 0:

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

Soms moet u mogelijk een binding voor menu-items maken waarmee zowel een diepte als een gegevenslid wordt opgegeven. Dit wordt vaak gebruikt wanneer de gegevensbron items bevat op verschillende niveaus met dezelfde gegevenslidwaarde. U kunt bijvoorbeeld elementen hebben <Item> die op verschillende niveaus in een XML-bestand worden weergegeven. De volgende MenuItemBinding declaraties laten zien hoe u bindingen voor menu-items opgeeft die van toepassing zijn op identieke gegevensleden in verschillende menudiepten:

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

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

Als een binding voor een menu-item zonder diepte en een gegevenslid wordt gedefinieerd, wordt de binding voor menu-items toegepast op alle menu-items in het menu. Dit wordt vaak gebruikt wanneer alle gegevensitems dezelfde eigenschappen hebben en identiek moeten worden weergegeven, ongeacht de menudiepte.

Nadat de bindingscriteria tot stand zijn gebracht, kunt u vervolgens een eigenschap van een MenuItem object binden dat aan een waarde kan worden gebonden. U kunt een binding maken met een veld van een gegevensitem of met een statische waarde. Wanneer het afhankelijk is van een statische waarde, delen alle MenuItem objecten waarop het MenuItemBinding object wordt toegepast dezelfde waarde. Eigenschappen die zijn gebonden aan velden bevatten de waarden van het veld uit de gegevensbron.

Als conflicterende MenuItemBinding objecten zijn gedefinieerd, past het Menu besturingselement de menuopdrachtbindingen in de volgende volgorde van prioriteit toe:

  1. Het MenuItemBinding object dat zowel een diepte als een gegevenslid definieert en overeenkomt.

  2. Het MenuItemBinding object dat alleen het gegevenslid definieert en overeenkomt.

  3. Het MenuItemBinding object dat alleen de diepte definieert en overeenkomt.

  4. Het MenuItemBinding object dat de diepte en het gegevenslid definieert. (Dit type binding voor menu-items wordt toegepast op alle menu-items in het menu.)

  5. Het MenuItemBinding object dat geen overeenkomst heeft in de gegevensbron. In dit geval is de waarde die wordt geretourneerd door de ToString() methode van het gegevensitem, gebonden aan de Text en Value eigenschappen van de menu-items waarop het MenuItemBinding object wordt toegepast.

Van toepassing op

Zie ook