MenuItemCollection.GetEnumerator Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna um enumerador que pode ser usado para iterar pelos itens no objeto MenuItemCollection atual.
public:
virtual System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator
Retornos
Um enumerador que pode ser usado para iterar pelos itens no MenuItemCollection atual.
Implementações
Exemplos
O exemplo de código a seguir demonstra como usar o GetEnumerator método para criar um enumerador que contém os itens de submenu do Music
item de menu em um Menu controle.
<%@ 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)
{
// Display the submenu items of the Music
// menu item.
// Retrieve the Music menu item.
MenuItem musicMenuItem = NavigationMenu.FindItem(@"Home\Music");
// Use the GetEnumerator method to create an enumerator
// that contains the submenu items of the Music menu item.
IEnumerator menuItemEnumerator = musicMenuItem.ChildItems.GetEnumerator();
Message.Text = "The submenu items of the Music menu item are: <br/><br/>";
// Iterate though the enumerator to display the menu items.
while (menuItemEnumerator.MoveNext())
{
Message.Text += ((MenuItem)(menuItemEnumerator.Current)).Text + "<br />";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItemCollection GetEnumerator Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemCollection GetEnumerator 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>
<hr/>
<asp:label id="Message"
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)
' Display the submenu items of the Music
' menu item.
' Retrieve the Music menu item.
Dim musicMenuItem As MenuItem = NavigationMenu.FindItem("Home\Music")
' Use the GetEnumerator method to create an enumerator
' that contains the submenu items of the Music menu item.
Dim menuItemEnumerator As IEnumerator = musicMenuItem.ChildItems.GetEnumerator()
Message.Text = "The submenu items of the Music menu item are: <br/><br/>"
' Iterate though the enumerator to display the menu items.
While menuItemEnumerator.MoveNext()
Message.Text &= (CType(menuItemEnumerator.Current, MenuItem)).Text & "<br />"
End While
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItemCollection GetEnumerator Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItemCollection GetEnumerator 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>
<hr/>
<asp:label id="Message"
runat="server"/>
</form>
</body>
</html>
Comentários
Use o GetEnumerator método para criar um enumerador que pode ser facilmente iterado para obter cada item no objeto atual MenuItemCollection . Para obter o item apontado no momento no enumerador, use a Current propriedade. Use o MoveNext método para mover para o próximo item. Se você precisar mover o enumerador de volta para o início da coleção, use o Reset método.
Observação
Depois de criar um enumerador ou usar o Reset método, você deve chamar o MoveNext método. Caso contrário, o item representado pela Current propriedade é indefinido.
Como alternativa, você também pode usar o CopyTo método para copiar os itens na coleção para uma matriz. Em seguida, você pode usar a matriz para acessar os itens na coleção.