MenuItemBindingCollection Clase

Definición

Representa una colección de objetos MenuItemBinding.

public ref class MenuItemBindingCollection sealed : System::Web::UI::StateManagedCollection
public sealed class MenuItemBindingCollection : System.Web.UI.StateManagedCollection
type MenuItemBindingCollection = class
    inherit StateManagedCollection
Public NotInheritable Class MenuItemBindingCollection
Inherits StateManagedCollection
Herencia
MenuItemBindingCollection

Ejemplos

En el ejemplo de código siguiente se muestra cómo rellenar un MenuItemBindingCollection objeto mediante declaración. Para que este ejemplo funcione correctamente, debe copiar los datos XML de ejemplo siguientes en un archivo denominado Map.xml.


<%@ 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" >
  <head runat="server">
    <title>Menu DataBindings Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>Menu DataBindings Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="1"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">
        
       <DataBindings>
        
          <asp:menuitembinding datamember="MapHomeNode" 
            depth="0"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="1"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="2"
            textfield="title" 
            navigateurlfield="url"/>
        </DataBindings>
        
      </asp:menu>
      
      <asp:XmlDataSource id="MenuSource"
        datafile="Map.xml"
        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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>Menu DataBindings Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>Menu DataBindings Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="1"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">
        
        <DataBindings>
          <asp:menuitembinding datamember="MapHomeNode" 
            depth="0"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="1"
            textfield="title" 
            navigateurlfield="url"/>
          <asp:menuitembinding datamember="MapNode" 
            depth="2"
            textfield="title" 
            navigateurlfield="url"/>
        </DataBindings>
        
      </asp:menu>
      
      <asp:XmlDataSource id="MenuSource"
        datafile="Map.xml"
        runat="server"/>        

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

En el ejemplo de código siguiente se muestra cómo agregar MenuItemBinding objetos a un MenuItemBindingCollection objeto mediante programación. Para que este ejemplo funcione correctamente, debe copiar los datos XML de ejemplo siguientes en un archivo denominado Map.xml.


<%@ 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)
    {
      // Create the menu item bindings for the Menu control.
      MenuItemBinding binding;
      
      binding = CreateMenuItemBinding("MapHomeNode", 0, "title", "url");
      NavigationMenu.DataBindings.Add(binding);

      binding = CreateMenuItemBinding("MapNode", 1, "title", "url");
      NavigationMenu.DataBindings.Add(binding);

      binding = CreateMenuItemBinding("MapNode", 2, "title", "url");
      NavigationMenu.DataBindings.Add(binding);
    }
  }

  // This is a helper method to create a MenuItemBinding 
  // object from the specified parameters.
  MenuItemBinding CreateMenuItemBinding(String dataMember, int depth, String textField, String navigateUrlField)
  {
    // Create a new MenuItemBinding object.
    MenuItemBinding binding = new MenuItemBinding();

    // Set the properties of the MenuItemBinding object.
    binding.DataMember = dataMember;
    binding.Depth = depth;
    binding.TextField = textField;
    binding.NavigateUrlField = navigateUrlField;

    return binding;
  }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBindingCollection Add Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemBindingCollection Add Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="2"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">        
      </asp:menu>
      
      <asp:xmldatasource id="MenuSource"
        datafile="Map.xml"
        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 Not IsPostBack Then
    
      ' Create the menu item bindings for the Menu control.
      Dim binding As MenuItemBinding
      
      binding = CreateMenuItemBinding("MapHomeNode", 0, "title", "url")
      NavigationMenu.DataBindings.Add(binding)

      binding = CreateMenuItemBinding("MapNode", 1, "title", "url")
      NavigationMenu.DataBindings.Add(binding)

      binding = CreateMenuItemBinding("MapNode", 2, "title", "url")
      NavigationMenu.DataBindings.Add(binding)
   
    End If
    
  End Sub

  ' This is a helper method to create a MenuItemBinding 
  ' object from the specified parameters.
  Function CreateMenuItemBinding(ByVal dataMember As String, ByVal depth As Integer, ByVal textField As String, ByVal navigateUrlField As String) As MenuItemBinding
  
    ' Create a new MenuItemBinding object.
    Dim binding As New MenuItemBinding()

    ' Set the properties of the MenuItemBinding object.
    binding.DataMember = dataMember
    binding.Depth = depth
    binding.TextField = textField
    binding.NavigateUrlField = navigateUrlField

    Return binding
    
  End Function
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBindingCollection Add Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemBindingCollection Add Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="2"
        staticsubmenuindent="10" 
        orientation="Vertical"
        target="_blank"
        datasourceid="MenuSource"
        runat="server">        
      </asp:menu>
      
      <asp:xmldatasource id="MenuSource"
        datafile="Map.xml"
        runat="server"/>        

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

A continuación se muestran los datos de mapa del sitio de ejemplo para los ejemplos anteriores.

<MapHomeNode url="~\Home.aspx"

title="Home"

description="Home">

<MapNode url="~\Music.aspx"

title="Music"

description="Music">

<MapNode url="~\Classical.aspx"

title="Classical"

description="Classical"/>

<MapNode url="~\Rock.aspx"

title="Rock"

description="Rock"/>

<MapNode url="~\Jazz.aspx"

title="Jazz"

description="Jazz"/>

</MapNode>

<MapNode url="~\Movies.aspx"

title="Movies"

description="Movies">

<MapNode url="~\Action.aspx"

title="Action"

description="Action"/>

<MapNode url="~\Drama.aspx"

title="Drama"

description="Drama"/>

<MapNode url="~\Musical.aspx"

title="Musical"

description="Musical"/>

</MapNode>

</MapHomeNode>

Comentarios

La MenuItemBindingCollection clase se usa para almacenar y administrar una colección de MenuItemBinding objetos en el Menu control . El Menu control usa la MenuItemBindingCollection clase como tipo de datos para su DataBindings propiedad. La DataBindings propiedad se usa para almacenar los enlaces de elementos de menú definidos para el Menu control.

Nota

El orden en el que MenuItemBinding aparecen los objetos en la colección no tiene ningún efecto sobre cómo se aplican esos objetos a los elementos de menú de un Menu control .

La MenuItemBindingCollection clase admite varias maneras de acceder a los elementos de la colección:

  • Use el Item[] indexador para recuperar directamente el MenuItemBinding objeto en un índice específico de base cero.

  • Use el GetEnumerator método para crear un enumerador que se pueda usar para recorrer en iteración la colección.

  • Use el CopyTo método para copiar el contenido de la colección en una matriz.

Puede administrar mediante programación un MenuItemBindingCollection objeto agregando y quitando MenuItemBinding objetos. Para agregar elementos de menú a la colección, use el Add método o Insert . Para quitar nodos de la colección, use , Removeo RemoveAtel Clear método .

La MenuItemBindingCollection clase contiene propiedades y métodos que permiten recuperar información sobre la propia colección. Para averiguar cuántos elementos hay en la colección, use la Count propiedad . Si desea determinar si la colección contiene un objeto determinado MenuItemBinding , use el Contains método . Para obtener el índice de un MenuItemBinding objeto de la colección, use el IndexOf método .

Propiedades

Count

Obtiene el número de elementos incluidos en la colección StateManagedCollection.

(Heredado de StateManagedCollection)
Item[Int32]

Obtiene el objeto MenuItemBinding en el índice especificado de la colección.

Métodos

Add(MenuItemBinding)

Agrega el objeto MenuItemBinding especificado al final de la colección.

Clear()

Quita todos los elementos de la colección StateManagedCollection.

(Heredado de StateManagedCollection)
Contains(MenuItemBinding)

Determina si el objeto MenuItemBinding especificado está en la colección.

CopyTo(Array, Int32)

Copia los elementos de la colección StateManagedCollection en una matriz a partir de un índice de matriz concreto.

(Heredado de StateManagedCollection)
CopyTo(MenuItemBinding[], Int32)

Copia todos los elementos del objeto MenuItemBindingCollection en una matriz unidimensional compatible de objetos MenuItemBinding, empezando por el índice especificado de la matriz de destino.

CreateKnownType(Int32)

Cuando se reemplaza en una clase derivada, crea una instancia de una clase que implementa IStateManager. El tipo de objeto creado se basa en el miembro especificado de la colección devuelto por el método GetKnownTypes().

(Heredado de StateManagedCollection)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetEnumerator()

Devuelve un iterador que permite recorrer en iteración la colección StateManagedCollection.

(Heredado de StateManagedCollection)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetKnownTypes()

Cuando se reemplaza en una clase derivada, obtiene una matriz de tipos IStateManager que la colección StateManagedCollection puede contener.

(Heredado de StateManagedCollection)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IndexOf(MenuItemBinding)

Determina el índice del objeto MenuItemBinding especificado en la colección.

Insert(Int32, MenuItemBinding)

Agrega el objeto MenuItemBinding especificado a la colección en la ubicación de índice especificada.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnClear()

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional antes de que el método Clear() quite todos los elementos de la colección.

(Heredado de StateManagedCollection)
OnClearComplete()

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional después de que el método Clear() termine de quitar todos los elementos de la colección.

(Heredado de StateManagedCollection)
OnInsert(Int32, Object)

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional antes de que los métodos IList.Insert(Int32, Object) o IList.Add(Object) agreguen un elemento a la colección.

(Heredado de StateManagedCollection)
OnInsertComplete(Int32, Object)

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional después de que los métodos IList.Insert(Int32, Object) o IList.Add(Object) agreguen un elemento a la colección.

(Heredado de StateManagedCollection)
OnRemove(Int32, Object)

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional antes de que los métodos IList.Remove(Object) o IList.RemoveAt(Int32) quiten el elemento especificado de la colección.

(Heredado de StateManagedCollection)
OnRemoveComplete(Int32, Object)

Cuando se reemplaza en una clase derivada, realiza un trabajo adicional después de que los métodos IList.Remove(Object) o IList.RemoveAt(Int32) quiten el elemento especificado de la colección.

(Heredado de StateManagedCollection)
OnValidate(Object)

Cuando se reemplaza en una clase derivada, valida un elemento de la colección StateManagedCollection.

(Heredado de StateManagedCollection)
Remove(MenuItemBinding)

Quita el objeto MenuItemBinding especificado de la colección.

RemoveAt(Int32)

Quita el objeto MenuItemBinding de la colección en el índice especificado.

SetDirty()

Obliga a serializar la colección StateManagedCollection completa en el estado de vista.

(Heredado de StateManagedCollection)
SetDirtyObject(Object)

Cuando se reemplaza en una clase derivada, indica a un object incluido en la colección que registre su estado completo en el estado de vista, en lugar de registrar solo la información correspondiente a los cambios.

(Heredado de StateManagedCollection)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

ICollection.Count

Obtiene el número de elementos incluidos en la colección StateManagedCollection.

(Heredado de StateManagedCollection)
ICollection.IsSynchronized

Obtiene un valor que indica si la colección StateManagedCollection está sincronizada (seguro para subprocesos). Este método devuelve false en todos los casos.

(Heredado de StateManagedCollection)
ICollection.SyncRoot

Obtiene un objeto que se puede usar para sincronizar el acceso a la colección StateManagedCollection. Este método devuelve null en todos los casos.

(Heredado de StateManagedCollection)
IEnumerable.GetEnumerator()

Devuelve un iterador que permite recorrer en iteración la colección StateManagedCollection.

(Heredado de StateManagedCollection)
IList.Add(Object)

Agrega un elemento a la colección StateManagedCollection.

(Heredado de StateManagedCollection)
IList.Clear()

Quita todos los elementos de la colección StateManagedCollection.

(Heredado de StateManagedCollection)
IList.Contains(Object)

Determina si la colección StateManagedCollection contiene un valor específico.

(Heredado de StateManagedCollection)
IList.IndexOf(Object)

Determina el índice de un elemento especificado en la colección StateManagedCollection.

(Heredado de StateManagedCollection)
IList.Insert(Int32, Object)

Inserta un elemento en el índice especificado de la colección StateManagedCollection.

(Heredado de StateManagedCollection)
IList.IsFixedSize

Obtiene un valor que indica si la colección StateManagedCollection tiene un tamaño fijo. Este método devuelve false en todos los casos.

(Heredado de StateManagedCollection)
IList.IsReadOnly

Obtiene un valor que indica si la colección StateManagedCollection es de solo lectura.

(Heredado de StateManagedCollection)
IList.Item[Int32]

Obtiene el elemento IStateManager en el índice especificado.

(Heredado de StateManagedCollection)
IList.Remove(Object)

Quita la primera aparición del objeto especificado de la colección StateManagedCollection.

(Heredado de StateManagedCollection)
IList.RemoveAt(Int32)

Quita el elemento IStateManager en el índice especificado.

(Heredado de StateManagedCollection)
IStateManager.IsTrackingViewState

Obtiene un valor que indica si la colección StateManagedCollection está guardando los cambios en su estado de vista.

(Heredado de StateManagedCollection)
IStateManager.LoadViewState(Object)

Restaura el estado de vista previamente guardado de la colección StateManagedCollection y de los elementos IStateManager que contiene.

(Heredado de StateManagedCollection)
IStateManager.SaveViewState()

Guarda los cambios realizados en la colección StateManagedCollection y en cada objeto IStateManager que contiene desde el momento en que la página se devolvió al servidor.

(Heredado de StateManagedCollection)
IStateManager.TrackViewState()

Hace que la colección StateManagedCollection y cada uno de los objetos IStateManager que contiene realicen un seguimiento de los cambios en el estado de vista para que se puedan conservar entre distintas solicitudes de la misma página.

(Heredado de StateManagedCollection)

Métodos de extensión

Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.

OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.

AsParallel(IEnumerable)

Habilita la paralelización de una consulta.

AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.

Se aplica a

Consulte también