MenuItem.Depth Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene el nivel en el que se muestra un elemento de menú.
public:
property int Depth { int get(); };
[System.ComponentModel.Browsable(false)]
public int Depth { get; }
[<System.ComponentModel.Browsable(false)>]
member this.Depth : int
Public ReadOnly Property Depth As Integer
Valor de propiedad
Nivel en el que se muestra un elemento de menú.
- Atributos
Ejemplos
En el ejemplo siguiente se muestra cómo usar la Depth propiedad para determinar la profundidad de un elemento de menú.
<%@ 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 the Menu control contains any root nodes, perform a
// preorder traversal of the tree and display the text of
// nodes with a depth of 2.
if (NavigationMenu.Items.Count > 0)
{
// Iterate through the root menu items in the Items collection.
foreach (MenuItem item in NavigationMenu.Items)
{
DisplayChildMenuText(item);
}
}
else
{
Message.Text = "The Menu control does not have any items.";
}
}
void DisplayChildMenuText(MenuItem item)
{
// Use the Depth property to determine the depth of a
// menu item. Display only items with a depth of 2.
if (item.Depth == 2)
{
Message.Text += item.Text + "<br />";
}
// Iterate through the child menu items of the parent menu item
// passed into this method, and display their values.
foreach (MenuItem childItem in item.ChildItems)
{
// Recursively call the DisplayChildMenuText method to
// traverse the tree.
DisplayChildMenuText(childItem);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItem Depth Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItem Depth Example</h3>
<asp:menu id="NavigationMenu"
staticdisplaylevels="2"
staticsubmenuindent="10"
orientation="Vertical"
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/>
Menu items with a depth of 2:<br/><br/>
<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)
' If the Menu control contains any root menu items, perform a
' preorder traversal of the tree and display the text of
' menu items with a depth of 2.
If NavigationMenu.Items.Count > 0 Then
' Iterate through the root menu items in the Items collection.
Dim item As MenuItem
For Each item In NavigationMenu.Items
DisplayChildMenuText(item)
Next
Else
Message.Text = "The Menu control does not have any items."
End If
End Sub
Sub DisplayChildMenuText(ByVal item As MenuItem)
' Use the Depth property to determine the depth of a
' menu item. Display only items with a depth of 2.
If item.Depth = 2 Then
Message.Text += item.Text + "<br />"
End If
' Iterate through the child menu items of the parent menu item
' passed into this method, and display their values.
Dim childItem As MenuItem
For Each childItem In item.ChildItems
' Recursively call the DisplayChildMenuText method to
' traverse the tree.
DisplayChildMenuText(childItem)
Next
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>MenuItem Depth Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>MenuItem Depth Example</h3>
<asp:menu id="NavigationMenu"
staticdisplaylevels="2"
staticsubmenuindent="10"
orientation="Vertical"
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/>
Menu items with a depth of 2:<br/><br/>
<asp:label id="Message"
runat="server"/>
</form>
</body>
</html>
Comentarios
Utilice la Depth propiedad para determinar la profundidad del elemento de menú. La profundidad indica el nivel en el que se muestra un elemento de menú y representa el número de niveles de jerarquía entre el elemento de menú actual y el elemento de menú raíz. Por ejemplo, un elemento de menú raíz tiene una profundidad de 0. Un elemento de submenú del elemento de menú raíz tiene una profundidad de 1, etc.