MenuItemBindingCollection.Insert Method (Int32, MenuItemBinding)
Adds the specified MenuItemBinding object to the collection at the specified index location.
Assembly: System.Web (in System.Web.dll)
Parameters
- index
-
Type:
System.Int32
The zero-based index location at which to insert the MenuItemBinding.
- binding
-
Type:
System.Web.UI.WebControls.MenuItemBinding
The MenuItemBinding to insert.
Use the Insert method to insert the specified MenuItemBinding object in the collection at the specified index.
Note |
|---|
You can add null values and duplicate MenuItemBinding objects to the collection. |
As an alternative, you can simply append a MenuItemBinding object to the end of the collection by using the Add method.
Note |
|---|
The order in which MenuItemBinding objects appear in the collection has no effect on the how those objects are applied to the menu items in a Menu control. |
The following code example demonstrates how to use the Insert method to add a MenuItemBinding object to the collection at a specific index. For this example to work correctly, you must copy the sample XML data below to a file named 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 MenuItemBinding object to insert. MenuItemBinding binding; binding = CreateMenuItemBinding("MapNode", 1, "title", "url"); // Use the Insert method to add the MenuItemBinding // object to the Bindings collection at index 1. NavigationMenu.DataBindings.Insert(1, 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 Insert Example</title> </head> <body> <form id="form1" runat="server"> <h3>MenuItemBindingCollection Insert 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="2" textfield="title" navigateurlfield="url"/> </DataBindings> </asp:menu> <asp:xmldatasource id="MenuSource" datafile="Map.xml" runat="server"/> </form> </body> </html>
The following is sample site map data for the previous example.
<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>
Available since 2.0
