指定した 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 オーバーロードの一覧