Freigeben über


Menu.DataBindings Eigenschaft

Definition

Ruft eine Auflistung von MenuItemBinding-Objekten ab, die die Beziehung zwischen einem Datenelement und dem Menüelement, an das es gebunden werden soll, definieren.

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

Eigenschaftswert

MenuItemBindingCollection

Eine MenuItemBindingCollection, die die Beziehung zwischen einem Datenelement und dem Menüelement, an das es gebunden werden soll, darstellt.

Attribute

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie die DataBindings Auflistung verwendet wird, um die Beziehung zwischen den Feldern eines XmlDataSource Steuerelements und den Menüelementen in einem Menu Steuerelement zu definieren. In diesem Beispiel müssen Sie die nachstehenden XML-Beispieldaten in eine Datei mit dem Namen "Map.xml" kopieren.


<%@ 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>

Das folgende Beispiel ist Beispielwebsitezuordnungsdaten für das vorherige Beispiel.

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

Hinweise

Die DataBindings Auflistung enthält MenuItemBinding Objekte, die die Beziehung zwischen einem Datenelement und dem Menüelement definieren, an das sie gebunden ist. Wenn sie an eine Datenquelle gebunden werden, in der jedes Datenelement mehrere Eigenschaften enthält (z. B. ein XML-Element mit mehreren Attributen), zeigt ein Menüelement den wert an, der standardmäßig von der ToString() Methode des Datenelements zurückgegeben wird. Im Falle eines XML-Elements zeigt das Menüelement den Elementnamen an, der die zugrunde liegende Struktur der Struktur anzeigt, aber nicht sehr nützlich ist. Sie können ein Menüelement an eine bestimmte Datenelementeigenschaft binden, indem Sie Menüelementbindungen angeben.

Beim Definieren der Beziehung zwischen einem Datenelement und einem Menüelement müssen Sie sowohl die Kriterien für die Bindung als auch die Eigenschaft eines Datenelements angeben, an das eine Bindung gebunden werden soll. Die Kriterien geben an, wann ein Datenelement an ein Menüelement gebunden werden soll. Die Kriterien können mit einer Tiefe, einem Datenmitglied oder beidem angegeben werden. Die Tiefe gibt die Menüebene an, die gebunden wird. Wenn Sie beispielsweise eine Tiefe von 0 angeben, werden alle Menüelemente in der Struktur auf Ebene 0 mit der Menüelementbindung gebunden. Ein Datenelement gibt den Typ des Datenelements in der zugrunde liegenden Datenquelle an, kann jedoch je nach Datenquelle unterschiedliche Informationen darstellen. Beispielsweise gibt das Datenelement für ein XML-Element den Namen des Elements an.

Wenn mehrere MenuItemBinding Objekte definiert sind, die miteinander konflikten, wendet das Menu Steuerelement die Menüelementbindungen in der folgenden Reihenfolge der Rangfolge an:

  1. Das MenuItemBinding Objekt, das sowohl eine Tiefe als auch ein Datenelement definiert.

  2. Das MenuItemBinding Objekt, das nur die Tiefe definiert.

  3. Das MenuItemBinding Objekt, das nur das Datenelement definiert.

  4. Das MenuItemBinding Objekt, das weder die Tiefe noch das Datenelement definiert.

Nachdem die Bindungskriterien eingerichtet wurden, können Sie dann eine Eigenschaft eines MenuItem Objekts binden, das an ein Attribut oder ein Feld eines Datenelements gebunden werden kann. Sie können beispielsweise die Eigenschaft eines Menüelements an das Textattribute eines XML-Elements binden, indem Sie die Text TextField Eigenschaft eines MenuItemBinding Objekts festlegen. Sie können auch an einen statischen Wert binden. Wenn Sie die Text Eigenschaft eines MenuItemBinding Objekts festlegen, teilen alle Menüelemente, auf die das MenuItemBinding Objekt angewendet wird, denselben statischen Textwert. Weitere Informationen zum Binden der Eigenschaften eines MenuItem Objekts auf einen Wert finden Sie unter MenuItemBinding.

Obwohl die Auflistung programmgesteuert gefüllt werden kann, wird sie in der DataBindings Regel deklarativ festgelegt. Wenn Sie die Menüelementbindung angeben möchten, können Sie zuerst die Öffnen- und Schließentags zwischen den öffnenden und schließenden Tags des Menu Steuerelements öffnen und schließen<DataBindings>. Platzieren Sie <asp:MenuItemBinding> als Nächstes Elemente zwischen den öffnenden und schließenden <DataBindings> Tags für jede Menüelementbindung, die Sie angeben möchten.

Gilt für

Siehe auch