MenuItemCollection MenuItemCollection MenuItemCollection MenuItemCollection Class

Definizione

Rappresenta una raccolta di voci di menu in un controllo Menu.Represents a collection of menu items in a Menu control. Questa classe non può essere ereditata.This class cannot be inherited.

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
Ereditarietà
MenuItemCollectionMenuItemCollectionMenuItemCollectionMenuItemCollection
Implementazioni

Esempi

Nell'esempio di codice riportato di seguito viene illustrato Items come ChildItems popolare le raccolte e utilizzando la sintassi dichiarativa.The following code example demonstrates how to populate the Items and ChildItems collections using declarative syntax.


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

Nell'esempio di codice seguente viene illustrato come aggiungere un MenuItem oggetto ChildItems a livello di codice alla raccolta di una voce di menu radice.The following code example demonstrates how to programmatically add a MenuItem object to the ChildItems collection of a root menu 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>

Commenti

La MenuItemCollection classe viene utilizzata per archiviare e gestire una raccolta di MenuItem oggetti nel Menu controllo.The MenuItemCollection class is used to store and manage a collection of MenuItem objects in the Menu control. Il Menu controllo Usa la MenuItemCollection classe per archiviare le voci di menu Items radice nella proprietà.The Menu control uses the MenuItemCollection class to store its root menu items in the Items property. Questa raccolta viene usata anche per la ChildItems proprietà di un MenuItem oggetto per archiviare le voci di sottomenu di una voce di menu, se presenti.This collection is also used for the ChildItems property of a MenuItem object to store a menu item's submenu items (if any).

La MenuItemCollection classe supporta diversi modi per accedere agli elementi della raccolta:The MenuItemCollection class supports several ways to access the items in the collection:

  • Usare l' Item[Int32] indicizzatore per recuperare direttamente un MenuItem oggetto in corrispondenza di un indice in base zero specifico.Use the Item[Int32] indexer to directly retrieve a MenuItem object at a specific zero-based index.

  • Usare il GetEnumerator metodo per creare un enumeratore che può essere usato per scorrere la raccolta.Use the GetEnumerator method to create an enumerator that can be used to iterate through the collection.

  • Usare il CopyTo metodo per copiare il contenuto della raccolta in una matrice.Use the CopyTo method to copy the contents of the collection into an array.

È possibile gestire un oggetto a MenuItemCollection livello di codice tramite l' MenuItem aggiunta e la rimozione di oggetti.You can programmatically manage a MenuItemCollection object by adding and removing MenuItem objects. Per aggiungere voci di menu alla raccolta, utilizzare il Add AddAt metodo o.To add menu items to the collection, use the Add or the AddAt method. Per rimuovere i nodi dalla raccolta, utilizzare il Remove Clear metodo RemoveAt, o.To remove nodes from the collection, use the Remove, the RemoveAt, or the Clear method.

Nota

Quando il Menu controllo è associato a un'origine dati, le Items raccolte ChildItems e vengono popolate automaticamente ogni volta che si verifica l'associazione.When the Menu control is bound to a data source, the Items and ChildItems collections are automatically populated each time binding occurs. Eventuali modifiche apportate alle raccolte tra binding andranno perse.Any changes to the collections between bindings will be lost. Per mantenere queste modifiche, aggiornare l'origine dati o ricompilare manualmente la raccolta ogni volta che si esegue l'associazione.To retain these changes, either update the data source or manually rebuild the collection each time you bind.

La MenuItemCollection classe contiene proprietà e metodi che consentono di recuperare informazioni sulla raccolta stessa.The MenuItemCollection class contains properties and methods that allow you to retrieve information about the collection itself. Per individuare il numero di elementi presenti nella raccolta, utilizzare la Count proprietà.To find out how many items are in the collection, use the Count property. Se si desidera determinare se la raccolta contiene un determinato MenuItem oggetto, utilizzare il Contains metodo.If you want to determine whether the collection contains a certain MenuItem object, use the Contains method. Per ottenere l'indice di un MenuItem oggetto nella raccolta, utilizzare il IndexOf metodo.To get the index of a MenuItem object in the collection, use the IndexOf method.

Costruttori

MenuItemCollection() MenuItemCollection() MenuItemCollection() MenuItemCollection()

Inizializza una nuova istanza della classe MenuItemCollection utilizzando i valori predefiniti.Initializes a new instance of the MenuItemCollection class using the default values.

MenuItemCollection(MenuItem) MenuItemCollection(MenuItem) MenuItemCollection(MenuItem) MenuItemCollection(MenuItem)

Inizializza una nuova istanza della classe MenuItemCollection con la voce di menu padre, o proprietario, specificata.Initializes a new instance of the MenuItemCollection class using the specified parent menu item (or owner).

Proprietà

Count Count Count Count

Ottiene il numero delle voci di menu contenute nell'oggetto MenuItemCollection corrente.Gets the number of menu items contained in the current MenuItemCollection object.

IsSynchronized IsSynchronized IsSynchronized IsSynchronized

Ottiene un valore che indica se l'accesso all'oggetto MenuItemCollection è sincronizzato (thread-safe).Gets a value indicating whether access to the MenuItemCollection object is synchronized (thread safe).

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

Ottiene l'oggetto MenuItem in corrispondenza dell'indice specificato nell'oggetto MenuItemCollection corrente.Gets the MenuItem object at the specified index in the current MenuItemCollection object.

SyncRoot SyncRoot SyncRoot SyncRoot

Ottiene un oggetto che può essere usato per sincronizzare l'accesso all'oggetto MenuItemCollection.Gets an object that can be used to synchronize access to the MenuItemCollection object.

Metodi

Add(MenuItem) Add(MenuItem) Add(MenuItem) Add(MenuItem)

Aggiunge alla fine dell'oggetto MenuItem corrente l'oggetto MenuItemCollection specificato.Appends the specified MenuItem object to the end of the current MenuItemCollection object.

AddAt(Int32, MenuItem) AddAt(Int32, MenuItem) AddAt(Int32, MenuItem) AddAt(Int32, MenuItem)

Inserisce nell'oggetto MenuItem corrente in corrispondenza della posizione di indice specificata l'oggetto MenuItemCollection specificato.Inserts the specified MenuItem object in the current MenuItemCollection object at the specified index location.

Clear() Clear() Clear() Clear()

Rimuove tutti gli elementi dall'oggetto MenuItemCollection corrente.Removes all items from the current MenuItemCollection object.

Contains(MenuItem) Contains(MenuItem) Contains(MenuItem) Contains(MenuItem)

Determina se l'oggetto MenuItem specificato è incluso nell'insieme.Determines whether the specified MenuItem object is in the collection.

CopyTo(Array, Int32) CopyTo(Array, Int32) CopyTo(Array, Int32) CopyTo(Array, Int32)

Copia tutti gli elementi dall'oggetto MenuItemCollection a una matrice unidimensionale compatibile Array, a partire dall'indice specificato nella matrice di destinazione.Copies all the items from the MenuItemCollection object to a compatible one-dimensional Array, starting at the specified index in the target array.

CopyTo(MenuItem[], Int32) CopyTo(MenuItem[], Int32) CopyTo(MenuItem[], Int32) CopyTo(MenuItem[], Int32)

Copia tutti gli elementi dall'oggetto MenuItemCollection a una matrice unidimensionale compatibile di oggetti MenuItem, a partire dall'indice specificato nella matrice di destinazione.Copies all the items from the MenuItemCollection object to a compatible one-dimensional array of MenuItem objects, starting at the specified index in the target array.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetEnumerator() GetEnumerator() GetEnumerator() GetEnumerator()

Restituisce un enumeratore che può essere utilizzato per scorrere gli elementi dell'oggetto MenuItemCollection corrente.Returns an enumerator that can be used to iterate through the items in the current MenuItemCollection object.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
IndexOf(MenuItem) IndexOf(MenuItem) IndexOf(MenuItem) IndexOf(MenuItem)

Determina l'indice dell'oggetto MenuItem specificato nell'insieme.Determines the index of the specified MenuItem object in the collection.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
Remove(MenuItem) Remove(MenuItem) Remove(MenuItem) Remove(MenuItem)

Rimuove dall'oggetto MenuItem l'oggetto MenuItemCollection specificato.Removes the specified MenuItem object from the MenuItemCollection object.

RemoveAt(Int32) RemoveAt(Int32) RemoveAt(Int32) RemoveAt(Int32)

Rimuove l'oggetto MenuItem dall'oggetto MenuItemCollection corrente in corrispondenza della posizione di indice specificata.Removes the MenuItem object at the specified index location from the current MenuItemCollection object.

ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Implementazioni dell'interfaccia esplicita

IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState IStateManager.IsTrackingViewState

Ottiene un valore che indica se l'oggetto MenuItemCollection salva le modifiche apportate al relativo stato di visualizzazione.Gets a value that indicates whether the MenuItemCollection object is saving changes to its view state.

IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object) IStateManager.LoadViewState(Object)

Carica lo stato di visualizzazione precedentemente salvato dell'oggetto MenuItemCollection.Loads the MenuItemCollection object's previously saved view state.

IStateManager.SaveViewState() IStateManager.SaveViewState() IStateManager.SaveViewState() IStateManager.SaveViewState()

Salva le modifiche apportate allo stato di visualizzazione in un oggetto Object.Saves the changes to view state to an Object.

IStateManager.TrackViewState() IStateManager.TrackViewState() IStateManager.TrackViewState() IStateManager.TrackViewState()

Indica all'oggetto MenuItemCollection di tenere traccia delle modifiche apportate allo stato di visualizzazione.Instructs the MenuItemCollection object to track changes to its view state.

Metodi di estensione

Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable)

Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable)

Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable)

Consente la parallelizzazione di una query.Enables parallelization of a query.

AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable)

Converte un oggetto IEnumerable in un oggetto IQueryable.Converts an IEnumerable to an IQueryable.

Si applica a

Vedi anche