MenuItemCollection Klas

Definitie

Vertegenwoordigt een verzameling menu-items in een Menu besturingselement. Deze klasse kan niet worden overgenomen.

public ref class MenuItemCollection sealed : System::Collections::ICollection, System::Web::UI::IStateManager
public sealed class MenuItemCollection : System.Collections.ICollection, System.Web.UI.IStateManager
type MenuItemCollection = class
    interface ICollection
    interface IEnumerable
    interface IStateManager
Public NotInheritable Class MenuItemCollection
Implements ICollection, IStateManager
Overname
MenuItemCollection
Implementeringen

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u de Items verzamelingen ChildItems vult met behulp van declaratieve syntaxis.


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

  <!-- For the hover styles of the Menu control to  -->
  <!-- work correctly, you must include this head   -->
  <!-- element.                                     -->
  <head runat="server">
    <title>Menu Declarative Example</title>
</head>

  <body>
    <form id="form1" runat="server">
    
      <h3>Menu Declarative Example</h3>
    
      <!-- Use declarative syntax to create the   -->
      <!-- menu structure. Submenu items are      -->
      <!-- created by nesting them in parent menu -->
      <!-- items.                                 -->
      <asp:menu id="NavigationMenu"
        disappearafter="2000"
        staticdisplaylevels="2"
        staticsubmenuindent="10" 
        orientation="Vertical"
        font-names="Arial" 
        target="_blank"  
        runat="server">
        
        <staticmenuitemstyle backcolor="LightSteelBlue"
          forecolor="Black"/>
        <statichoverstyle backcolor="LightSkyBlue"/>
        <dynamicmenuitemstyle backcolor="Black"
          forecolor="Silver"/>
        <dynamichoverstyle backcolor="LightSkyBlue"
          forecolor="Black"/>
      
        <items>
          <asp:menuitem navigateurl="Home.aspx" 
            text="Home"
            tooltip="Home">
            <asp:menuitem navigateurl="Music.aspx"
              text="Music"
              tooltip="Music">
              <asp:menuitem navigateurl="Classical.aspx" 
                text="Classical"
                tooltip="Classical"/>
              <asp:menuitem navigateurl="Rock.aspx"
                text="Rock"
                tooltip="Rock"/>
              <asp:menuitem navigateurl="Jazz.aspx"
                text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem navigateurl="Movies.aspx"
              text="Movies"
              tooltip="Movies">
              <asp:menuitem navigateurl="Action.aspx"
                text="Action"
                tooltip="Action"/>
              <asp:menuitem navigateurl="Drama.aspx"
                text="Drama"
                tooltip="Drama"/>
              <asp:menuitem navigateurl="Musical.aspx"
                text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>
      
      </asp:menu>

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

  <!-- For the hover styles of the Menu control to  -->
  <!-- work correctly, you must include this head   -->
  <!-- element.                                     -->
  <head runat="server">
    <title>Menu Declarative Example</title>
</head>

  <body>
    <form id="form1" runat="server">
    
      <h3>Menu Declarative Example</h3>
    
      <!-- Use declarative syntax to create the   -->
      <!-- menu structure. Submenu items are      -->
      <!-- created by nesting them in parent menu -->
      <!-- items.                                 -->
      <asp:menu id="NavigationMenu"
        disappearafter="2000"
        staticdisplaylevels="2"
        staticsubmenuindent="10" 
        orientation="Vertical"
        font-names="Arial" 
        target="_blank"  
        runat="server">
        
        <staticmenuitemstyle backcolor="LightSteelBlue"
          forecolor="Black"/>
        <statichoverstyle backcolor="LightSkyBlue"/>
        <dynamicmenuitemstyle backcolor="Black"
          forecolor="Silver"/>
        <dynamichoverstyle backcolor="LightSkyBlue"
          forecolor="Black"/>
      
        <items>
          <asp:menuitem navigateurl="Home.aspx" 
            text="Home"
            tooltip="Home">
            <asp:menuitem navigateurl="Music.aspx"
              text="Music"
              tooltip="Music">
              <asp:menuitem navigateurl="Classical.aspx" 
                text="Classical"
                tooltip="Classical"/>
              <asp:menuitem navigateurl="Rock.aspx"
                text="Rock"
                tooltip="Rock"/>
              <asp:menuitem navigateurl="Jazz.aspx"
                text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem navigateurl="Movies.aspx"
              text="Movies"
              tooltip="Movies">
              <asp:menuitem navigateurl="Action.aspx"
                text="Action"
                tooltip="Action"/>
              <asp:menuitem navigateurl="Drama.aspx"
                text="Drama"
                tooltip="Drama"/>
              <asp:menuitem navigateurl="Musical.aspx"
                text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>
      
      </asp:menu>

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

In het volgende codevoorbeeld ziet u hoe u programmatisch een MenuItem object toevoegt aan de ChildItems verzameling van een hoofdmenu-item.


<%@ 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)
    {
      // Retrieve the root menu item from the Items
      // collection of the Menu control using the indexer.
      MenuItem homeMenuItem = NavigationMenu.Items[0];

      // Create the submenu item.
      MenuItem newSubMenuItem = new MenuItem("New Category");

      // Add the submenu item to the ChildItems
      // collection of the root menu item.
      homeMenuItem.ChildItems.Add(newSubMenuItem);
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemCollection Add Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemCollection Add Example</h3>
    
      <asp:menu id="NavigationMenu"
        orientation="Vertical"
        target="_blank" 
        runat="server">
        
        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>

      </asp:menu>

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

      ' Retrieve the root menu item from the Items
      ' collection of the Menu control using the indexer.
      Dim homeMenuItem As MenuItem = NavigationMenu.Items(0)

      ' Create the submenu item.
      Dim newSubMenuItem = New MenuItem("New Category")

      ' Add the submenu item to the ChildItems
      ' collection of the root menu item.
      homeMenuItem.ChildItems.Add(newSubMenuItem)
    
    End If
      
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemCollection Add Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemCollection Add Example</h3>
    
      <asp:menu id="NavigationMenu"
        orientation="Vertical"
        target="_blank" 
        runat="server">
        
        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>

      </asp:menu>

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

Opmerkingen

De MenuItemCollection klasse wordt gebruikt voor het opslaan en beheren van MenuItem een verzameling objecten in het Menu besturingselement. Het Menu besturingselement gebruikt de MenuItemCollection klasse om de hoofdmenu-items op te slaan in de Items eigenschap. Deze verzameling wordt ook gebruikt voor de eigenschap van een object voor het ChildItems opslaan van de submenu-items van een MenuItem menu-item (indien van toepassing).

De MenuItemCollection klasse ondersteunt verschillende manieren om toegang te krijgen tot de items in de verzameling:

  • Gebruik de Item[] indexeerfunctie om een MenuItem object rechtstreeks op te halen bij een specifieke op nul gebaseerde index.

  • Gebruik de GetEnumerator methode om een enumerator te maken die kan worden gebruikt om de verzameling te herhalen.

  • Gebruik de CopyTo methode om de inhoud van de verzameling naar een matrix te kopiëren.

U kunt een MenuItemCollection object programmatisch beheren door objecten toe te voegen en te verwijderen MenuItem . Als u menu-items aan de verzameling wilt toevoegen, gebruikt u de Add of de AddAt methode. Als u knooppunten uit de verzameling wilt verwijderen, gebruikt u de Removemethode, de RemoveAtof de Clear methode.

Note

Wanneer het Menu besturingselement is gebonden aan een gegevensbron, worden de Items verzamelingen automatisch ChildItems ingevuld telkens wanneer de binding plaatsvindt. Wijzigingen in de verzamelingen tussen bindingen gaan verloren. Als u deze wijzigingen wilt behouden, werkt u de gegevensbron bij of bouwt u de verzameling handmatig opnieuw op telkens wanneer u bindt.

De MenuItemCollection klasse bevat eigenschappen en methoden waarmee u informatie over de verzameling zelf kunt ophalen. Gebruik de Count eigenschap om te achterhalen hoeveel items zich in de verzameling bevinden. Als u wilt bepalen of de verzameling een bepaald MenuItem object bevat, gebruikt u de Contains methode. Gebruik de methode om de index van een MenuItem object in de verzameling op te IndexOf halen.

Constructors

Name Description
MenuItemCollection()

Initialiseert een nieuw exemplaar van de MenuItemCollection klasse met behulp van de standaardwaarden.

MenuItemCollection(MenuItem)

Initialiseert een nieuw exemplaar van de MenuItemCollection klasse met behulp van het opgegeven bovenliggende menu-item (of eigenaar).

Eigenschappen

Name Description
Count

Hiermee haalt u het aantal menu-items op dat is opgenomen in het huidige MenuItemCollection object.

IsSynchronized

Hiermee wordt een waarde opgehaald die aangeeft of de toegang tot het MenuItemCollection object wordt gesynchroniseerd (thread safe).

Item[Int32]

Hiermee wordt het MenuItem object opgehaald bij de opgegeven index in het huidige MenuItemCollection object.

SyncRoot

Hiermee haalt u een object op dat kan worden gebruikt om de toegang tot het MenuItemCollection object te synchroniseren.

Methoden

Name Description
Add(MenuItem)

Voegt het opgegeven MenuItem object toe aan het einde van het huidige MenuItemCollection object.

AddAt(Int32, MenuItem)

Hiermee voegt u het opgegeven MenuItem object in het huidige MenuItemCollection object op de opgegeven indexlocatie in.

Clear()

Hiermee verwijdert u alle items uit het huidige MenuItemCollection object.

Contains(MenuItem)

Bepaalt of het opgegeven MenuItem object zich in de verzameling bevindt.

CopyTo(Array, Int32)

Kopieert alle items van het MenuItemCollection object naar een compatibele eendimensionale Arraywaarde, beginnend bij de opgegeven index in de doelmatrix.

CopyTo(MenuItem[], Int32)

Kopieert alle items van het MenuItemCollection object naar een compatibele eendimensionale matrix van MenuItem objecten, te beginnen bij de opgegeven index in de doelmatrix.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetEnumerator()

Retourneert een enumerator die kan worden gebruikt om de items in het huidige MenuItemCollection object te doorlopen.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
IndexOf(MenuItem)

Bepaalt de index van het opgegeven MenuItem object in de verzameling.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
Remove(MenuItem)

Hiermee verwijdert u het opgegeven MenuItem object uit het MenuItemCollection object.

RemoveAt(Int32)

Hiermee verwijdert u het MenuItem object op de opgegeven indexlocatie uit het huidige MenuItemCollection object.

ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Expliciete interface-implementaties

Name Description
IStateManager.IsTrackingViewState

Hiermee wordt een waarde opgehaald die aangeeft of het MenuItemCollection object wijzigingen opslaat in de weergavestatus.

IStateManager.LoadViewState(Object)

Laadt de eerder opgeslagen weergavestatus van het MenuItemCollection object.

IStateManager.SaveViewState()

Hiermee worden de wijzigingen opgeslagen om de status weer te geven in een Object.

IStateManager.TrackViewState()

Hiermee wordt het MenuItemCollection object geïnstrueerd om wijzigingen in de weergavestatus bij te houden.

Extensiemethoden

Name Description
AsParallel(IEnumerable)

Hiermee schakelt u parallelle uitvoering van een query in.

AsQueryable(IEnumerable)

Converteert een IEnumerable naar een IQueryable.

Cast<TResult>(IEnumerable)

Cast de elementen van een IEnumerable naar het opgegeven type.

OfType<TResult>(IEnumerable)

Hiermee filtert u de elementen van een IEnumerable op basis van een opgegeven type.

Van toepassing op

Zie ook