MenuItemBindingCollection.CopyTo(MenuItemBinding[], Int32) Метод

Определение

Копирует все элементы из объекта MenuItemBindingCollection в совместимый одномерный массив объектов MenuItemBinding, начиная с указанного индекса в массиве назначения.

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)

Параметры

array
MenuItemBinding[]

Индексируемый от нуля массив объектов MenuItemBinding, получающий скопированные в коллекции элементы.

index
Int32

Позиция в массиве назначения, начиная с которой в него будет копироваться содержимое.

Примеры

В следующем примере кода показано, как использовать CopyTo метод для копирования MenuItemBinding объектов из коллекции в массив. Затем массив выполняет итерации для отображения свойств MenuItemBinding объектов. Чтобы этот пример работал правильно, необходимо скопировать приведенные ниже примеры XML-данных в файл с именем 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>

Ниже приведен пример данных карты сайта для предыдущего примера.

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

Комментарии

CopyTo Используйте метод для копирования содержимого коллекции в указанный отсчитываемый от нуля массив. Элементы копируются, начиная с указанного индекса целевого массива. С помощью массива можно использовать синтаксис массива для доступа к элементам в объекте MenuItemBindingCollection .

В качестве альтернативы можно также использовать GetEnumerator метод для создания перечислителя, который можно использовать для доступа к элементам в коллекции.

Применяется к

См. также раздел