Menu.DataBindings Özellik

Tanım

Bir veri öğesiyle bağlandığınız menü öğesi arasındaki ilişkiyi tanımlayan nesne koleksiyonunu MenuItemBinding alır.

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

Özellik Değeri

MenuItemBindingCollection

Bir MenuItemBindingCollection veri öğesi ile bağlandığını menü öğesi arasındaki ilişkiyi temsil eden bir.

Öznitelikler

Örnekler

Aşağıdaki kod örneği, bir denetimin alanları ile denetimdeki DataBindings XmlDataSource menü öğeleri Menu arasındaki ilişkiyi tanımlamak için koleksiyonun nasıl kullanılacağını gösterir. Bu örneğin düzgün çalışması için aşağıdaki örnek XML verilerini Map.xml adlı bir dosyaya kopyalamanız gerekir.


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

Aşağıda, önceki örnekteki örnek site haritası verileri verilmiştir.

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

Açıklamalar

Koleksiyon, DataBindings bir veri öğesi ile bağlandığınız menü öğesi arasındaki ilişkiyi tanımlayan nesneler içerir MenuItemBinding . Her veri öğesinin birden çok özellik (çeşitli özniteliklere sahip bir XML öğesi gibi) içerdiği bir veri kaynağına bağlanırken, menü öğesi varsayılan olarak veri öğesinin yöntemi tarafından ToString() döndürülen değeri görüntüler. XML öğesi söz konusu olduğunda, menü öğesi ağacın temel yapısını gösteren öğe adını görüntüler, ancak aksi takdirde çok kullanışlı değildir. Menü öğesi bağlamalarını belirterek menü öğesini belirli bir veri öğesi özelliğine bağlayabilirsiniz.

Bir veri öğesi ile menü öğesi arasındaki ilişkiyi tanımlarken, hem bağlama ölçütlerini hem de bağlanılacak veri öğesinin özelliğini belirtmeniz gerekir. Ölçütler, bir veri öğesinin bir menü öğesine ne zaman bağlanması gerektiğini gösterir. Ölçütler derinlik, veri üyesi veya her ikisiyle de belirtilebilir. Derinlik, bağlanan menü düzeyini belirtir. Örneğin, 0 derinliği belirtirseniz, düzey 0'daki ağaç yapısındaki tüm menü öğeleri menü öğesi bağlaması kullanılarak bağlanır. Veri üyesi, temel alınan veri kaynağındaki veri öğesinin türünü belirtir, ancak veri kaynağına bağlı olarak farklı bilgileri temsil edebilir. Örneğin, bir XML öğesinin veri üyesi öğenin adını belirtir.

Birbiriyle çakışan birden çok MenuItemBinding nesne tanımlanırsa, Menu denetim menü öğesi bağlamalarını aşağıdaki öncelik sırasına göre uygular:

  1. Hem MenuItemBinding derinliği hem de veri üyesini tanımlayan nesne.

  2. MenuItemBinding Yalnızca derinliği tanımlayan nesne.

  3. MenuItemBinding Yalnızca veri üyesini tanımlayan nesne.

  4. Derinliği MenuItemBinding veya veri üyesini tanımlayan nesne.

Bağlama ölçütleri oluşturulduktan sonra, bir veri öğesinin MenuItem özniteliğine veya alanına bağlanabilen bir nesnenin özelliğini bağlayabilirsiniz. Örneğin, bir nesnenin Text özelliğini ayarlayarak bir menü öğesinin özelliğini xml öğesindeki text özniteliğine TextField MenuItemBinding bağlayabilirsiniz. Statik bir değere de bağlanabilirsiniz. Bir MenuItemBinding nesnenin Text özelliğini ayarlarsanız, nesnenin MenuItemBinding uygulandığı tüm menü öğeleri aynı statik metin değerini paylaşır. Bir nesnenin özelliklerini bir MenuItem değere bağlama hakkında daha fazla bilgi için bkz MenuItemBinding. .

DataBindings Koleksiyon program aracılığıyla doldurulabilse de, genellikle bildirim temelli olarak ayarlanır. Menü öğesi bağlamalarını belirtmek için, önce açma ve kapatma <DataBindings> etiketlerini denetimin açma ve kapatma etiketleri arasında iç içe kullanın Menu . Ardından, öğeleri belirtmek istediğiniz her menü öğesi bağlaması için açma ve kapatma <DataBindings> etiketleri arasına yerleştirin<asp:MenuItemBinding>.

Şunlara uygulanır

Ayrıca bkz.