MenuItemBindingCollection.CopyTo(MenuItemBinding[], Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
MenuItemBindingCollection のすべての項目を互換性のある 1 次元の 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[]
コレクションからコピーされた項目の格納先となるインデックス番号が 0 から始まる 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 0 から始まる配列にコレクションの内容をコピーするには、 メソッドを使用します。 項目は、ターゲット配列の指定したインデックスからコピーされます。 配列を使用すると、配列構文を使用して オブジェクト内の項目に MenuItemBindingCollection アクセスできます。
別の方法として、 メソッドを GetEnumerator 使用して、コレクション内の項目にアクセスするために使用できる列挙子を作成することもできます。
適用対象
こちらもご覧ください
.NET