ContextMenuBuilderイベントを使用することで、グラフを右クリックしたときに表示されるコンテキストメニューに、項目の追加や削除を行えます。
なおコンテキストメニューは、ZedGraphControlオブジェクトのIsShowContextMenuプロパティがtrueになっていなければ表示されません。
既定のコンテキストメニュー
※コンテキストメニューが英語で表示される場合には日本語化します。
public delegate void ContextMenuBuilderEventHandler( ZedGraphControl sender, // イベントを発生させた ZedGraphControlオブジェクト ContextMenuStrip menuStrip, // 現在のコンテキストメニュー Point mousePt, // マウスがクリックされた位置 ZedGraphControl.ZedGraphControl.ContextMenuObjectState objState // 現在のコンテキストメニューの状態 )
イベントハンドラに渡される第2引数のmenuStripはSystem.Windows.FormsのContextMenuStrip型であるため、通常のコンテキストメニューを処理する方法でカスタマイズできます。ContextMenuStripクラス (System.Windows.Forms) | MSDN
this.zedGraphControl.ContextMenuBuilder += new ZedGraphControl.ContextMenuBuilderEventHandler( ContextMenuBuilderHandler );
private void ContextMenuBuilderHandler( ZedGraphControl sender, ContextMenuStrip menuStrip, Point mousePt, ZedGraphControl.ContextMenuObjectState objState )
{
ToolStripMenuItem item = new ToolStripMenuItem();
item.Text = "新しい項目";
item.Click += new System.EventHandler( MenuItem_Click );
// メニューに項目を追加する
menuStrip.Items.Add( item );
}
private void MenuItem_Click( object sender, EventArgs args )
{
// メニューがクリックされたときの処理を行う
}