MenuItemCollection.Remove(MenuItem) メソッド

定義

指定した MenuItem オブジェクトを MenuItemCollection オブジェクトから削除します。Removes the specified MenuItem object from the MenuItemCollection object.

public:
 void Remove(System::Web::UI::WebControls::MenuItem ^ value);
public void Remove (System.Web.UI.WebControls.MenuItem value);
member this.Remove : System.Web.UI.WebControls.MenuItem -> unit
Public Sub Remove (value As MenuItem)

パラメーター

value
MenuItem

削除する MenuItem オブジェクト。The MenuItem object to remove.

例外

valuenullです。value is null.

次のコード例は、Remove メソッドを使用して、MenuItemCollection オブジェクトから MenuItem オブジェクトをプログラムによって削除する方法を示しています。The following code example demonstrates how to use the Remove method to programmatically remove a MenuItem object from a MenuItemCollection object.


<%@ 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)
    {
      // Retrieve the root menu item from the Items
      // collection of the Menu control.
      MenuItem homeMenuItem = NavigationMenu.Items[0];

      // Retrieve the Movie submenu item from the ChildItems
      // collection of the root menu item.
      MenuItem movieSubMenuItem = NavigationMenu.FindItem(@"Home\Movies");

      // Remove the Movie submenu item.
      if (movieSubMenuItem != null)
      {
        homeMenuItem.ChildItems.Remove(movieSubMenuItem);
      }
    }
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemCollection Remove Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemCollection Remove Example</h3>
    
      <asp:menu id="NavigationMenu"
        orientation="Vertical"
        target="_blank" 
        runat="server">
        
        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>

      </asp:menu>

    </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
    
      ' Retrieve the root menu item from the Items
      ' collection of the Menu control.
      Dim homeMenuItem As MenuItem = NavigationMenu.Items(0)

      ' Retrieve the Movie submenu item from the ChildItems
      ' collection of the root menu item.
      Dim movieSubMenuItem As MenuItem = NavigationMenu.FindItem("Home\Movies")

      ' Remove the Movie submenu item.
      If movieSubMenuItem IsNot Nothing Then
      
        homeMenuItem.ChildItems.Remove(movieSubMenuItem)
        
      End If
        
    End If
        
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemCollection Remove Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemCollection Remove Example</h3>
    
      <asp:menu id="NavigationMenu"
        orientation="Vertical"
        target="_blank" 
        runat="server">
        
        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>

      </asp:menu>

    </form>
  </body>
</html>

注釈

Remove メソッドを使用して、指定したメニュー項目をコレクションから削除します。Use the Remove method to remove the specified menu item from the collection. その後、そのメニュー項目の後にあるすべての項目が、空いている位置に合わせて上に移動します。All items that follow that menu item are then moved up to fill in the vacant position. 移動した項目のインデックスも更新されます。The indexes of the moved items are also updated.

注意

MenuItemCollection オブジェクトには、null 値、および重複する MenuItem オブジェクトを含めることができます。The MenuItemCollection object can contain null values, as well as duplicate MenuItem objects.

別の方法として、RemoveAt メソッドを使用して、コレクション内の特定のインデックスからメニュー項目を削除することもできます。As an alternative, you can remove a menu item from a specific index in the collection by using the RemoveAt method. Clear メソッドを使用して、コレクションからすべてのメニュー項目を削除することもできます。You can also remove all menu items from the collection by using the Clear method.

適用対象

こちらもご覧ください