Compartilhar via


MenuItemBindingCollection Classe

Definição

Representa uma coleção 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
Herança
MenuItemBindingCollection

Exemplos

O exemplo de código a seguir demonstra como preencher um MenuItemBindingCollection objeto declarativamente. Para que este exemplo funcione corretamente, você deve copiar os dados XML de exemplo abaixo para um arquivo chamado 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>

O exemplo de código a seguir demonstra como adicionar MenuItemBinding objetos a um MenuItemBindingCollection objeto programaticamente. Para que este exemplo funcione corretamente, você deve copiar os dados XML de exemplo abaixo para um arquivo chamado 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>

Veja a seguir dados de mapa de site de exemplo para os exemplos 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>

Comentários

A MenuItemBindingCollection classe é usada para armazenar e gerenciar uma coleção de MenuItemBinding objetos no Menu controle. O Menu controle usa a MenuItemBindingCollection classe como o tipo de dados para sua DataBindings propriedade. A DataBindings propriedade é usada para armazenar todas as associações de item de menu definidas para o Menu controle.

Observação

A ordem na qual MenuItemBinding os objetos aparecem na coleção não tem efeito sobre como esses objetos são aplicados aos itens de menu em um Menu controle.

A MenuItemBindingCollection classe dá suporte a várias maneiras de acessar os itens na coleção:

  • Use o Item[] indexador para recuperar diretamente o MenuItemBinding objeto em um índice específico baseado em zero.

  • Use o GetEnumerator método para criar um enumerador que pode ser usado para iterar por meio da coleção.

  • Use o CopyTo método para copiar o conteúdo da coleção em uma matriz.

Você pode gerenciar um MenuItemBindingCollection objeto programaticamente adicionando e removendo MenuItemBinding objetos. Para adicionar itens de menu à coleção, use o método ou o Add Insert método. Para remover nós da coleção, use o Removemétodo, o ou o RemoveAtClear método.

A MenuItemBindingCollection classe contém propriedades e métodos que permitem recuperar informações sobre a própria coleção. Para descobrir quantos itens estão na coleção, use a Count propriedade. Se você quiser determinar se a coleção contém um determinado MenuItemBinding objeto, use o Contains método. Para obter o índice de um MenuItemBinding objeto na coleção, use o IndexOf método.

Propriedades

Count

Obtém o número de elementos contidos na coleção StateManagedCollection.

(Herdado de StateManagedCollection)
Item[Int32]

Obtém o objeto MenuItemBinding no índice especificado da coleção.

Métodos

Add(MenuItemBinding)

Acrescenta o objeto MenuItemBinding especificado ao final da coleção.

Clear()

Remove todos os itens da coleção StateManagedCollection.

(Herdado de StateManagedCollection)
Contains(MenuItemBinding)

Determina se o objeto MenuItemBinding especificado está na coleção.

CopyTo(Array, Int32)

Copia os elementos da coleção StateManagedCollection para uma matriz, começando em um índice de matriz específico.

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

Copia todos os itens do objeto MenuItemBindingCollection para uma matriz unidimensional compatível de objetos MenuItemBinding, começando no índice especificado na matriz de destino.

CreateKnownType(Int32)

Quando substituído em uma classe derivada, cria uma instância de uma classe que implementa IStateManager. O tipo de objeto criado se baseia no membro especificado da coleção retornada pelo método GetKnownTypes().

(Herdado de StateManagedCollection)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetEnumerator()

Retorna um iterador que itera por meio da coleção StateManagedCollection.

(Herdado de StateManagedCollection)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetKnownTypes()

Quando substituído em uma classe derivada, obtém uma matriz de tipos IStateManager que a coleção StateManagedCollection pode conter.

(Herdado de StateManagedCollection)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
IndexOf(MenuItemBinding)

Determina o índice do objeto MenuItemBinding especificado na coleção.

Insert(Int32, MenuItemBinding)

Adiciona o objeto MenuItemBinding especificado à coleção no local de índice especificado.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnClear()

Quando substituído em uma classe derivada, executa o trabalho adicional antes do método Clear() remover todos os itens da coleção.

(Herdado de StateManagedCollection)
OnClearComplete()

Quando substituído em uma classe derivada, executa o trabalho adicional após o método Clear() terminar a remoção de todos os itens da coleção.

(Herdado de StateManagedCollection)
OnInsert(Int32, Object)

Quando substituído em uma classe derivada, executa o trabalho adicional antes do método IList.Insert(Int32, Object) ou IList.Add(Object) adicionar um item à coleção.

(Herdado de StateManagedCollection)
OnInsertComplete(Int32, Object)

Quando substituído em uma classe derivada, executa o trabalho adicional após o método IList.Insert(Int32, Object) ou IList.Add(Object) adicionar um item à coleção.

(Herdado de StateManagedCollection)
OnRemove(Int32, Object)

Quando substituído em uma classe derivada, executa o trabalho adicional antes do método IList.Remove(Object) ou IList.RemoveAt(Int32) remover o item especificado da coleção.

(Herdado de StateManagedCollection)
OnRemoveComplete(Int32, Object)

Quando substituído em uma classe derivada, executa o trabalho adicional após o método IList.Remove(Object) ou IList.RemoveAt(Int32) remover o item especificado da coleção.

(Herdado de StateManagedCollection)
OnValidate(Object)

Quando substituído em uma classe derivada, valida um elemento da coleção StateManagedCollection.

(Herdado de StateManagedCollection)
Remove(MenuItemBinding)

Remove o objeto MenuItemBinding especificado da coleção.

RemoveAt(Int32)

Remove o objeto MenuItemBinding no local do índice especificado da coleção.

SetDirty()

Força a coleção StateManagedCollection inteira a ser serializada no estado de exibição.

(Herdado de StateManagedCollection)
SetDirtyObject(Object)

Quando substituído em uma classe derivada, instrui um object contido na coleção a registrar seu estado inteiro para o estado de exibição, em vez de registrar apenas informações alteradas.

(Herdado de StateManagedCollection)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

ICollection.Count

Obtém o número de elementos contidos na coleção StateManagedCollection.

(Herdado de StateManagedCollection)
ICollection.IsSynchronized

Obtém um valor que indica se a coleção StateManagedCollection é sincronizada (thread-safe). Este método retorna false em todos os casos.

(Herdado de StateManagedCollection)
ICollection.SyncRoot

Obtém um objeto que pode ser usado para sincronizar o acesso à coleção StateManagedCollection. Este método retorna null em todos os casos.

(Herdado de StateManagedCollection)
IEnumerable.GetEnumerator()

Retorna um iterador que itera por meio da coleção StateManagedCollection.

(Herdado de StateManagedCollection)
IList.Add(Object)

Adiciona um item à coleção StateManagedCollection.

(Herdado de StateManagedCollection)
IList.Clear()

Remove todos os itens da coleção StateManagedCollection.

(Herdado de StateManagedCollection)
IList.Contains(Object)

Determina se a coleção StateManagedCollection contém um valor específico.

(Herdado de StateManagedCollection)
IList.IndexOf(Object)

Determina o índice de um item especificado na coleção StateManagedCollection.

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

Insere um item na coleção StateManagedCollection no índice especificado.

(Herdado de StateManagedCollection)
IList.IsFixedSize

Obtém um valor que indica se a coleção StateManagedCollection tem um tamanho fixo. Este método retorna false em todos os casos.

(Herdado de StateManagedCollection)
IList.IsReadOnly

Obtém um valor que indica se a coleção StateManagedCollection é somente leitura.

(Herdado de StateManagedCollection)
IList.Item[Int32]

Obtém o elemento IStateManager no índice especificado.

(Herdado de StateManagedCollection)
IList.Remove(Object)

Remove a primeira ocorrência do objeto especificado da coleção StateManagedCollection.

(Herdado de StateManagedCollection)
IList.RemoveAt(Int32)

Remove o elemento IStateManager no índice especificado.

(Herdado de StateManagedCollection)
IStateManager.IsTrackingViewState

Obtém um valor que indica se a coleção StateManagedCollection está salvando alterações no estado de exibição.

(Herdado de StateManagedCollection)
IStateManager.LoadViewState(Object)

Restaura o estado de exibição salvo anteriormente da coleção StateManagedCollection e o itens IStateManager que ele contém.

(Herdado de StateManagedCollection)
IStateManager.SaveViewState()

Salva as alterações na coleção StateManagedCollection e cada objeto IStateManager que ela contém, desde o momento em que a página foi postada novamente no servidor.

(Herdado de StateManagedCollection)
IStateManager.TrackViewState()

Faz com que a coleção StateManagedCollection e os objetos IStateManager que ela contém controlem as alterações realizadas no estado de exibição, para que elas possam ser mantidas em todas as solicitações para a mesma página.

(Herdado de StateManagedCollection)

Métodos de Extensão

Cast<TResult>(IEnumerable)

Converte os elementos de um IEnumerable para o tipo especificado.

OfType<TResult>(IEnumerable)

Filtra os elementos de um IEnumerable com base em um tipo especificado.

AsParallel(IEnumerable)

Habilita a paralelização de uma consulta.

AsQueryable(IEnumerable)

Converte um IEnumerable em um IQueryable.

Aplica-se a

Confira também