次の方法で共有


MenuItem.CloneMenu メソッド (MenuItem)

指定した MenuItem のコピーを作成します。

Overloads Protected Sub CloneMenu( _
   ByVal itemSrc As MenuItem _)
[C#]
protected void CloneMenu(MenuItemitemSrc);
[C++]
protected: void CloneMenu(MenuItem* itemSrc);
[JScript]
protected function CloneMenu(
   itemSrc : MenuItem);

パラメータ

  • itemSrc
    コピー対象のメニュー項目を表す MenuItem

戻り値

複製されたメニュー項目を表す MenuItem

解説

アプリケーション内のショートカット メニューまたは別のメニュー構造で使用するために、既に作成してあるメニュー項目のコピーを作成する場合は、このメソッドを呼び出します。このバージョンの CloneMenu を使用すると、コピー対象として、メソッドを呼び出しているメニュー項目ではなく、特定の MenuItem を指定できます。このメソッドを使用すると、別の MenuItem のコピーを使用して、新しい MenuItem オブジェクトを初期化できます。メニュー項目のクローンを作成した場合、元のメニュー項目に対して指定されているイベント ハンドラは、クローンとして作成されたメニュー項目についても機能します。たとえば、 MenuItem を作成し、その Click イベントをイベント ハンドラに結び付けたとします。メニュー項目のクローンを作成した場合、クローンとして作成されたメニュー項目も同じイベント ハンドラを呼び出します。

使用例

[Visual Basic, C#, C++] フォーム上の MainMenu で使用されている既存の MenuItem のコピーを使用して、新しい MenuItem を初期化する例を次に示します。初期化後、クローンとして作成された MenuItem がフォーム上の ContextMenu に追加されます。この例は、 menuItem1 という名前の MenuItem オブジェクトと contextMenu1 という名前の ContextMenu コントロールが既に作成されていることを前提にしています。

 
Public Sub CloneMyMenu()
    ' Clone the existing MenuItem into the new MenuItem.
    Dim tempMenuItem As MenuItem = menuItem1.CloneMenu()
       
    ' Assign the cloned MenuItem to the ContextMenu.
    contextMenu1.MenuItems.Add(tempMenuItem)
End Sub


[C#] 
public void CloneMyMenu()
{
   // Clone the existing MenuItem into the new MenuItem.
   MenuItem tempMenuItem = menuItem1.CloneMenu();
 
   // Assign the cloned MenuItem to the ContextMenu.
   contextMenu1.MenuItems.Add(tempMenuItem);
}


[C++] 
public:
 void CloneMyMenu()
 {
    // Clone the existing MenuItem into the new MenuItem.
    MenuItem* tempMenuItem = menuItem1->CloneMenu();
  
    // Assign the cloned MenuItem to the ContextMenu.
    contextMenu1->MenuItems->Add(tempMenuItem);
 }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

MenuItem クラス | MenuItem メンバ | System.Windows.Forms 名前空間 | MenuItem.CloneMenu オーバーロードの一覧