MenuItemBindingCollection.CopyTo(MenuItemBinding[], Int32) Metodo

Definizione

Copia tutti gli elementi dall'oggetto MenuItemBindingCollection a una matrice unidimensionale compatibile di oggetti MenuItemBinding, a partire dall'indice specificato nella matrice di destinazione.

public:
 void CopyTo(cli::array <System::Web::UI::WebControls::MenuItemBinding ^> ^ array, int index);
public void CopyTo (System.Web.UI.WebControls.MenuItemBinding[] array, int index);
override this.CopyTo : System.Web.UI.WebControls.MenuItemBinding[] * int -> unit
Public Sub CopyTo (array As MenuItemBinding(), index As Integer)

Parametri

array
MenuItemBinding[]

Matrice in base zero di oggetti MenuItemBinding che riceve gli elementi copiati dall'insieme.

index
Int32

Posizione nella matrice di destinazione in cui iniziare la ricezione del contenuto copiato.

Esempio

Nell'esempio di codice seguente viene illustrato come usare il CopyTo metodo per copiare gli MenuItemBinding oggetti dalla raccolta a una matrice. La matrice viene quindi iterazione attraverso per visualizzare le proprietà degli MenuItemBinding oggetti. Per il corretto funzionamento di questo esempio, è necessario copiare i dati XML di esempio seguenti in un file denominato 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)
  {
    // Declare an array of MenuItemBinding objects.
    MenuItemBinding[] bindingArray = new MenuItemBinding[NavigationMenu.DataBindings.Count];

    // Use the CopyTo method to copy the MenuItemBinding objects 
    // from the collection into the array.
    NavigationMenu.DataBindings.CopyTo(bindingArray, 0);

    // Display the properties of the MenuItemBinding objects 
    // in the Bindings collection.
    Message.Text = "The properties of the MenuItemBinding objects are: <br/><br/>";

    foreach (MenuItemBinding binding in bindingArray)
    {

      Message.Text += "DataMember=" + binding.TextField + 
        " Depth=" + binding.Depth.ToString() + "<br />";

    }
  }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBindingCollection CopyTo Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemBindingCollection CopyTo Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="2"
        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>
      
      <hr/>
      
      <asp:label id="Message" 
        runat="server"/>
      
      <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)

    ' Declare an array of MenuItemBinding objects.
    Dim bindingArray(NavigationMenu.DataBindings.Count - 1) As MenuItemBinding

    ' Use the CopyTo method to copy the MenuItemBinding objects 
    ' from the collection into the array.
    NavigationMenu.DataBindings.CopyTo(bindingArray, 0)

    ' Display the properties of the MenuItemBinding objects 
    ' in the Bindings collection.
    Message.Text = "The properties of the MenuItemBinding objects are: <br/><br/>"

    Dim binding As MenuItemBinding
    
    For Each binding In bindingArray
    

      Message.Text &= "DataMember=" & binding.TextField & _
        " Depth=" & binding.Depth.ToString() & "<br />"

    Next
    
  End Sub
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemBindingCollection CopyTo Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemBindingCollection CopyTo Example</h3>
    
      <asp:menu id="NavigationMenu"
        staticdisplaylevels="2"
        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>
      
      <hr/>
      
      <asp:label id="Message" 
        runat="server"/>
      
      <asp:xmldatasource id="MenuSource"
        datafile="Map.xml"
        runat="server"/>        

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

Di seguito sono riportati i dati della mappa del sito di esempio per l'esempio precedente.

<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>

Commenti

Utilizzare il CopyTo metodo per copiare il contenuto della raccolta nella matrice in base zero specificata. Gli elementi vengono copiati a partire dall'indice specificato della matrice di destinazione. Con la matrice è quindi possibile usare la sintassi della matrice per accedere agli elementi nell'oggetto MenuItemBindingCollection .

In alternativa, è anche possibile usare il GetEnumerator metodo per creare un enumeratore che può essere usato per accedere agli elementi della raccolta.

Si applica a

Vedi anche