MenuItemBindingCollection.Insert(Int32, MenuItemBinding) 方法

定义

将指定的 MenuItemBinding 对象添加到集合中的指定索引位置。

public:
 void Insert(int index, System::Web::UI::WebControls::MenuItemBinding ^ binding);
public void Insert (int index, System.Web.UI.WebControls.MenuItemBinding binding);
member this.Insert : int * System.Web.UI.WebControls.MenuItemBinding -> unit
Public Sub Insert (index As Integer, binding As MenuItemBinding)

参数

index
Int32

要插入 MenuItemBinding 对象的从零开始的索引位置。

binding
MenuItemBinding

要插入的 MenuItemBinding

示例

下面的代码示例演示如何使用 Insert 该方法将对象添加到 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)
  {
    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>

<%@ 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)
 
    If Not IsPostBack Then
    
      ' Create the MenuItemBinding object to insert.
      Dim binding As MenuItemBinding      
      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)
      
    End If
    
  End Sub

  ' This is a helper method to create a MenuItemBinding 
  ' object from the specified parameters.
  Function CreateMenuItemBinding(ByVal dataMember As String, ByVal depth As Integer, ByVal textField As String, ByVal navigateUrlField As String) As MenuItemBinding
  
    ' Create a new MenuItemBinding object.
    Dim binding As New MenuItemBinding()

    ' Set the properties of the MenuItemBinding object.
    binding.DataMember = dataMember
    binding.Depth = depth
    binding.TextField = textField
    binding.NavigateUrlField = navigateUrlField

    Return binding
    
  End Function
    
</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>

下面是上一示例的示例站点地图数据。

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

注解

使用该方法在 Insert 集合中插入指定索引处的指定 MenuItemBinding 对象。

备注

可以将 null 值和重复 MenuItemBinding 对象添加到集合。

或者,只需使用Add该方法将对象追加MenuItemBinding到集合末尾。

备注

对象在集合中的显示顺序 MenuItemBinding 不会影响这些对象应用于控件中的 Menu 菜单项的方式。

适用于

另请参阅