0

のクリックイベントを作成したいContextMenuStrip。このコンテキストメニューストリップをにリンクしましたNotifyIcon

どうやってやるの?これは私が使用したコードです:

ContextMenuStrip checkers_contact_menu = new ContextMenuStrip();
checkers_contact_menu.Items.Add("Open Mailbox");
checkers_contact_menu.Items.Add("About");
alert_sender.ContextMenuStrip = checkers_contact_menu;

私はこれを試しました

ContextMenuStrip checkers_contact_menu = new ContextMenuStrip();
checkers_contact_menu.Items.Add("Open Mailbox",null,openMailBoxToolStripMenuItem_Click);

private void openMailBoxToolStripMenuItem_Click(object sender, ToolStripItemClickedEventArgs e)
{
  MessageBox.Show("Mail box");
}

しかし、私はそれを言ってエラーが発生しています

エラー1'System.Windows.Forms.ToolStripItemCollection.Add(string、System.Drawing.Image、System.EventHandler)'に最適なオーバーロードされたメソッドの一致には、いくつかの無効な引数があります

PS:コードは機能しています、私はイベントハンドラーを持っていToolStripItemClickedEventArgs eたはずEventArgs eです。これで、コードは正常に機能します。ご協力いただきありがとうございます :)

4

1 に答える 1

2

イベント ハンドラー メソッドをスタブ化する必要があります。

private void aboutToolStripMenuItem_Click(object sender, EventArgs e) {
   MessageBox.Show("About");
}

次に、メニュー項目を追加するときに、イベント ハンドラー メソッドをそのパラメーターの 1 つとして指定します。

checkers_contact_menu.Items.Add("About", null, aboutToolStripMenuItem_Click);
于 2012-06-03T12:33:17.300 に答える