MenuItemBindingCollection Třída

Definice

Představuje kolekci MenuItemBinding objektů.

public ref class MenuItemBindingCollection sealed : System::Web::UI::StateManagedCollection
public sealed class MenuItemBindingCollection : System.Web.UI.StateManagedCollection
type MenuItemBindingCollection = class
    inherit StateManagedCollection
Public NotInheritable Class MenuItemBindingCollection
Inherits StateManagedCollection
Dědičnost
MenuItemBindingCollection

Příklady

Následující příklad kódu ukazuje, jak naplnit MenuItemBindingCollection objekt deklarativním způsobem. Aby tento příklad fungoval správně, musíte zkopírovat ukázková data XML níže do souboru s názvem 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>

Následující příklad kódu ukazuje, jak přidat MenuItemBinding objekty do objektu MenuItemBindingCollection programově. Aby tento příklad fungoval správně, musíte zkopírovat ukázková data XML níže do souboru s názvem 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">
<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {
    if(!IsPostBack)
    {
      // Create the menu item bindings for the Menu control.
      MenuItemBinding binding;
      
      binding = CreateMenuItemBinding("MapHomeNode", 0, "title", "url");
      NavigationMenu.DataBindings.Add(binding);

      binding = CreateMenuItemBinding("MapNode", 1, "title", "url");
      NavigationMenu.DataBindings.Add(binding);

      binding = CreateMenuItemBinding("MapNode", 2, "title", "url");
      NavigationMenu.DataBindings.Add(binding);
    }
  }

  // This is a helper method to create a MenuItemBinding 
  // object from the specified parameters.
  MenuItemBinding CreateMenuItemBinding(String dataMember, int depth, String textField, String navigateUrlField)
  {
    // Create a new MenuItemBinding object.
    MenuItemBinding binding = new MenuItemBinding();

    // Set the properties of the MenuItemBinding object.
    binding.DataMember = dataMember;
    binding.Depth = depth;
    binding.TextField = textField;
    binding.NavigateUrlField = navigateUrlField;

    return binding;
  }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBindingCollection Add Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemBindingCollection Add Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="2"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">        
      </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">
<script runat="server">

  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
 
    If Not IsPostBack Then
    
      ' Create the menu item bindings for the Menu control.
      Dim binding As MenuItemBinding
      
      binding = CreateMenuItemBinding("MapHomeNode", 0, "title", "url")
      NavigationMenu.DataBindings.Add(binding)

      binding = CreateMenuItemBinding("MapNode", 1, "title", "url")
      NavigationMenu.DataBindings.Add(binding)

      binding = CreateMenuItemBinding("MapNode", 2, "title", "url")
      NavigationMenu.DataBindings.Add(binding)
   
    End If
    
  End Sub

  ' This is a helper method to create a MenuItemBinding 
  ' object from the specified parameters.
  Function CreateMenuItemBinding(ByVal dataMember As String, ByVal depth As Integer, ByVal textField As String, ByVal navigateUrlField As String) As MenuItemBinding
  
    ' Create a new MenuItemBinding object.
    Dim binding As New MenuItemBinding()

    ' Set the properties of the MenuItemBinding object.
    binding.DataMember = dataMember
    binding.Depth = depth
    binding.TextField = textField
    binding.NavigateUrlField = navigateUrlField

    Return binding
    
  End Function
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBindingCollection Add Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemBindingCollection Add Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="2"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">        
      </asp:menu>
      
      <asp:xmldatasource id="MenuSource"
        datafile="Map.xml"
        runat="server"/>        

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

Níže jsou ukázková data mapy webu pro předchozí příklady.

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

Poznámky

Třída MenuItemBindingCollection slouží k ukládání a správě kolekce MenuItemBinding objektů v ovládacím Menu prvku. Ovládací Menu prvek používá MenuItemBindingCollection třídu jako datový typ pro jeho DataBindings vlastnost. Vlastnost DataBindings slouží k uložení všech vazeb položek nabídky definovaných pro Menu ovládací prvek.

Poznámka

Pořadí, ve kterém MenuItemBinding se v kolekci zobrazují objekty, nemá žádný vliv na to, jak se tyto objekty použijí u položek nabídky v ovládacím Menu prvku.

Třída MenuItemBindingCollection podporuje několik způsobů přístupu k položkám v kolekci:

  • Item[] Indexer slouží k přímému načtení objektu MenuItemBinding na konkrétním indexu založeném na nule.

  • Použijte metodu GetEnumerator k vytvoření výčtu, který lze použít k iteraci v kolekci.

  • CopyTo Pomocí metody zkopírujte obsah kolekce do pole.

Objekt můžete programově spravovat MenuItemBindingCollection přidáním a odebráním MenuItemBinding objektů. Pokud chcete do kolekce přidat položky nabídky, použijte metodu Add nebo metodu Insert . Pokud chcete odebrat uzly z kolekce, použijte Removemetodu RemoveAt, , nebo metodu Clear .

Třída MenuItemBindingCollection obsahuje vlastnosti a metody, které umožňují načíst informace o samotné kolekci. Pokud chcete zjistit, kolik položek je v kolekci, použijte Count vlastnost. Pokud chcete zjistit, jestli kolekce obsahuje určitý MenuItemBinding objekt, použijte metodu Contains . Chcete-li získat index MenuItemBinding objektu v kolekci, použijte metodu IndexOf .

Vlastnosti

Count

Získá počet prvků obsažených v kolekci StateManagedCollection .

(Zděděno od StateManagedCollection)
Item[Int32]

MenuItemBinding Získá objekt v zadaném indexu z kolekce.

Metody

Add(MenuItemBinding)

Připojí zadaný MenuItemBinding objekt na konec kolekce.

Clear()

Odebere všechny položky z StateManagedCollection kolekce.

(Zděděno od StateManagedCollection)
Contains(MenuItemBinding)

Určuje, zda je zadaný MenuItemBinding objekt v kolekci.

CopyTo(Array, Int32)

Zkopíruje prvky StateManagedCollection kolekce do pole počínaje konkrétním indexem pole.

(Zděděno od StateManagedCollection)
CopyTo(MenuItemBinding[], Int32)

Zkopíruje všechny položky z objektu MenuItemBindingCollection do kompatibilního jednorozměrného pole MenuItemBinding objektů počínaje zadaným indexem v cílovém poli.

CreateKnownType(Int32)

Při přepsání v odvozené třídě vytvoří instanci třídy, která implementuje IStateManager. Typ vytvořeného objektu je založen na zadaném členu kolekce vrácené metodou GetKnownTypes() .

(Zděděno od StateManagedCollection)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetEnumerator()

Vrátí iterátor, který prochází kolekcí StateManagedCollection .

(Zděděno od StateManagedCollection)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetKnownTypes()

Při přepsání v odvozené třídě získá pole IStateManager typů, které StateManagedCollection kolekce může obsahovat.

(Zděděno od StateManagedCollection)
GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
IndexOf(MenuItemBinding)

Určuje index zadaného MenuItemBinding objektu v kolekci.

Insert(Int32, MenuItemBinding)

Přidá zadaný MenuItemBinding objekt do kolekce v zadaném umístění indexu.

MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
OnClear()

Při přepsání v odvozené třídě provede další práci před Clear() odebráním všech položek z kolekce.

(Zděděno od StateManagedCollection)
OnClearComplete()

Při přepsání v odvozené třídě provede další práci po Clear() dokončení metody odebrání všech položek z kolekce.

(Zděděno od StateManagedCollection)
OnInsert(Int32, Object)

Při přepsání v odvozené třídě provede další práci před tím, než IList.Insert(Int32, Object) metoda IList.Add(Object) přidá položku do kolekce.

(Zděděno od StateManagedCollection)
OnInsertComplete(Int32, Object)

Při přepsání v odvozené třídě provede další práci po IList.Insert(Int32, Object) IList.Add(Object) přidání položky do kolekce.

(Zděděno od StateManagedCollection)
OnRemove(Int32, Object)

Při přepsání v odvozené třídě provede další práci před IList.Remove(Object) IList.RemoveAt(Int32) odebráním zadané položky z kolekce.

(Zděděno od StateManagedCollection)
OnRemoveComplete(Int32, Object)

Při přepsání v odvozené třídě provede další práci po IList.Remove(Object) IList.RemoveAt(Int32) odebrání zadané položky z kolekce.

(Zděděno od StateManagedCollection)
OnValidate(Object)

Při přepsání v odvozené třídě ověří prvek StateManagedCollection kolekce.

(Zděděno od StateManagedCollection)
Remove(MenuItemBinding)

Odebere zadaný MenuItemBinding objekt z kolekce.

RemoveAt(Int32)

Odebere MenuItemBinding objekt v zadaném umístění indexu z kolekce.

SetDirty()

Vynutí, aby se celá StateManagedCollection kolekce serializovala do stavu zobrazení.

(Zděděno od StateManagedCollection)
SetDirtyObject(Object)

Při přepsání v odvozené třídě dává kolekci pokyn object , aby zaznamenával celý stav, aby zobrazoval stav, a ne zaznamenávat pouze informace o změnách.

(Zděděno od StateManagedCollection)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

ICollection.Count

Získá počet prvků obsažených v kolekci StateManagedCollection .

(Zděděno od StateManagedCollection)
ICollection.IsSynchronized

Získá hodnotu označující, jestli StateManagedCollection je kolekce synchronizována (bezpečné vlákno). Tato metoda vrátí false ve všech případech.

(Zděděno od StateManagedCollection)
ICollection.SyncRoot

Získá objekt, který lze použít k synchronizaci přístupu k kolekci StateManagedCollection . Tato metoda vrátí null ve všech případech.

(Zděděno od StateManagedCollection)
IEnumerable.GetEnumerator()

Vrátí iterátor, který prochází kolekcí StateManagedCollection .

(Zděděno od StateManagedCollection)
IList.Add(Object)

Přidá položku do StateManagedCollection kolekce.

(Zděděno od StateManagedCollection)
IList.Clear()

Odebere všechny položky z StateManagedCollection kolekce.

(Zděděno od StateManagedCollection)
IList.Contains(Object)

Určuje, zda StateManagedCollection kolekce obsahuje konkrétní hodnotu.

(Zděděno od StateManagedCollection)
IList.IndexOf(Object)

Určuje index zadané položky v kolekci StateManagedCollection .

(Zděděno od StateManagedCollection)
IList.Insert(Int32, Object)

Vloží položku do StateManagedCollection kolekce v zadaném indexu.

(Zděděno od StateManagedCollection)
IList.IsFixedSize

Získá hodnotu určující, zda StateManagedCollection kolekce má pevnou velikost. Tato metoda vrátí ve false všech případech.

(Zděděno od StateManagedCollection)
IList.IsReadOnly

Získá hodnotu označující, zda StateManagedCollection je kolekce jen pro čtení.

(Zděděno od StateManagedCollection)
IList.Item[Int32]

IStateManager Získá prvek v zadaném indexu.

(Zděděno od StateManagedCollection)
IList.Remove(Object)

Odebere první výskyt zadaného objektu StateManagedCollection z kolekce.

(Zděděno od StateManagedCollection)
IList.RemoveAt(Int32)

Odebere IStateManager prvek v zadaném indexu.

(Zděděno od StateManagedCollection)
IStateManager.IsTrackingViewState

Získá hodnotu určující, zda StateManagedCollection kolekce ukládá změny do stavu zobrazení.

(Zděděno od StateManagedCollection)
IStateManager.LoadViewState(Object)

Obnoví dříve uložený stav StateManagedCollection zobrazení kolekce a IStateManager položky, které obsahuje.

(Zděděno od StateManagedCollection)
IStateManager.SaveViewState()

Uloží změny StateManagedCollection kolekce a každý IStateManager objekt, který obsahuje od doby, kdy byla stránka publikována zpět na server.

(Zděděno od StateManagedCollection)
IStateManager.TrackViewState()

StateManagedCollection Způsobí, že kolekce a každý z IStateManager objektů, které obsahuje, budou sledovat změny jejich stavu zobrazení, aby je bylo možné uchovávat napříč požadavky na stejnou stránku.

(Zděděno od StateManagedCollection)

Metody rozšíření

Cast<TResult>(IEnumerable)

Přetypuje prvky zadaného IEnumerable typu.

OfType<TResult>(IEnumerable)

Filtruje prvky IEnumerable založené na zadaném typu.

AsParallel(IEnumerable)

Umožňuje paralelizaci dotazu.

AsQueryable(IEnumerable)

Převede na IEnumerable IQueryable.

Platí pro

Viz také