MenuItemBindingCollection.Insert Method

Adds the specified MenuItemBinding object to the collection at the specified index location.

Namespace:  System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

public void Insert(
	int index,
	MenuItemBinding binding
)

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.

NoteNote

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.

NoteNote

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>

.NET Framework

Supported in: 4.5, 4, 3.5, 3.0, 2.0

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft