MenuItemCollection Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Representerar en samling menyobjekt i en Menu kontroll. Det går inte att ärva den här klassen.
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
- Arv
-
MenuItemCollection
- Implementeringar
Exempel
I följande kodexempel visas hur du fyller i samlingarna Items och ChildItems med deklarativ 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>
I följande kodexempel visas hur du programmatiskt lägger till ett MenuItem objekt i ChildItems samlingen av ett rotmenyobjekt.
<%@ 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>
Kommentarer
Klassen MenuItemCollection används för att lagra och hantera en samling MenuItem objekt i Menu kontrollen. Kontrollen Menu använder MenuItemCollection klassen för att lagra sina rotmenyobjekt i egenskapen Items . Den här samlingen används också för egenskapen för ett ChildItems objekt för MenuItem att lagra ett menyalternativs undermenyobjekt (om det finns några).
Klassen MenuItemCollection har stöd för flera sätt att komma åt objekten i samlingen:
Använd indexeraren Item[] för att hämta ett MenuItem objekt direkt vid ett specifikt nollbaserat index.
GetEnumerator Använd metoden för att skapa en uppräkning som kan användas för att iterera genom samlingen.
CopyTo Använd metoden för att kopiera innehållet i samlingen till en matris.
Du kan programmatiskt hantera ett MenuItemCollection objekt genom att lägga till och ta bort MenuItem objekt. Om du vill lägga till menyobjekt i samlingen använder du Add metoden eller AddAt . Om du vill ta bort noder från samlingen använder du Removemetoden , RemoveAteller .Clear
Note
Menu När kontrollen är bunden till en datakälla fylls samlingarna Items och ChildItems automatiskt i varje gång bindningen sker. Alla ändringar i samlingarna mellan bindningar går förlorade. Om du vill behålla ändringarna uppdaterar du antingen datakällan eller återskapar samlingen manuellt varje gång du binder.
Klassen MenuItemCollection innehåller egenskaper och metoder som gör att du kan hämta information om själva samlingen. Om du vill ta reda på hur många objekt som finns i samlingen använder du Count egenskapen . Om du vill ta reda på om samlingen innehåller ett visst MenuItem objekt använder du Contains metoden . Använd metoden för att hämta indexet för ett MenuItem objekt i samlingen IndexOf .
Konstruktorer
| Name | Description |
|---|---|
| MenuItemCollection() |
Initierar en ny instans av klassen med hjälp av MenuItemCollection standardvärdena. |
| MenuItemCollection(MenuItem) |
Initierar en ny instans av MenuItemCollection klassen med det angivna överordnade menyalternativet (eller ägaren). |
Egenskaper
| Name | Description |
|---|---|
| Count |
Hämtar antalet menyalternativ som finns i det aktuella MenuItemCollection objektet. |
| IsSynchronized |
Hämtar ett värde som anger om åtkomsten MenuItemCollection till objektet synkroniseras (trådsäker). |
| Item[Int32] |
Hämtar objektet MenuItem vid det angivna indexet i det aktuella MenuItemCollection objektet. |
| SyncRoot |
Hämtar ett objekt som kan användas för att synkronisera åtkomsten MenuItemCollection till objektet. |
Metoder
| Name | Description |
|---|---|
| Add(MenuItem) |
Lägger till det angivna MenuItem objektet i slutet av det aktuella MenuItemCollection objektet. |
| AddAt(Int32, MenuItem) |
Infogar det angivna MenuItem objektet i det aktuella MenuItemCollection objektet på den angivna indexplatsen. |
| Clear() |
Tar bort alla objekt från det aktuella MenuItemCollection objektet. |
| Contains(MenuItem) |
Avgör om det angivna MenuItem objektet finns i samlingen. |
| CopyTo(Array, Int32) |
Kopierar alla objekt från MenuItemCollection objektet till en kompatibel endimensionell Array, med början vid det angivna indexet i målmatrisen. |
| CopyTo(MenuItem[], Int32) |
Kopierar alla objekt från MenuItemCollection objektet till en kompatibel endimensionell matris med MenuItem objekt, med början vid det angivna indexet i målmatrisen. |
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| GetEnumerator() |
Returnerar en uppräknare som kan användas för att iterera genom objekten i det aktuella MenuItemCollection objektet. |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| IndexOf(MenuItem) |
Avgör indexet för det angivna MenuItem objektet i samlingen. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| Remove(MenuItem) |
Tar bort det angivna MenuItem objektet från objektet MenuItemCollection . |
| RemoveAt(Int32) |
Tar bort objektet MenuItem på den angivna indexplatsen från det aktuella MenuItemCollection objektet. |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| IStateManager.IsTrackingViewState |
Hämtar ett värde som anger om MenuItemCollection objektet sparar ändringar i visningstillståndet. |
| IStateManager.LoadViewState(Object) |
MenuItemCollection Läser in objektets tidigare sparade vytillstånd. |
| IStateManager.SaveViewState() |
Sparar ändringarna för att visa tillståndet till en Object. |
| IStateManager.TrackViewState() |
Instruerar objektet MenuItemCollection att spåra ändringar i dess visningstillstånd. |
Tilläggsmetoder
| Name | Description |
|---|---|
| AsParallel(IEnumerable) |
Möjliggör parallellisering av en fråga. |
| AsQueryable(IEnumerable) |
Konverterar en IEnumerable till en IQueryable. |
| Cast<TResult>(IEnumerable) |
Omvandlar elementen i en IEnumerable till den angivna typen. |
| OfType<TResult>(IEnumerable) |
Filtrerar elementen i en IEnumerable baserat på en angiven typ. |