1

toolStripMenuItems を動的に追加する ContextMenuStrip を持つ C# winForm アプリに取り組んでいます。リソース ファイルには、toolStripMenuItem.Image プロパティに割り当てるアイコンもあり、toolStripMenuItem.Click イベントを処理します。画像(アイコン)がクリックされたが、アイコン/画像にクリックイベントがない場合、実際にクリックイベントを処理したい。toolStripMenuItem の image プロパティに割り当てることができるクリック アイコンを作成するにはどうすればよいですか?

前もって感謝します

-DA

4

1 に答える 1

2

ToolStripItem をカスタマイズし、ContentRectangleプロパティを使用して画像が含まれる四角形を取得する必要があります。

画像が含まれる四角形を計算する MSDNのComputeImageAndTextLayout コード サンプルを見てください。

ToolStripItem の MouseDown イベントでは、以下に示すように、MouseDown イベントが発生したときの ToolStripItem 内のマウスの座標を取得します。

void item_MouseDown(object sender, MouseEventArgs e)
{
    int x = e.X;
    int y = e.Y;
}

次に、MouseDown 座標が取得した四角形内にあるかどうかを計算し、ImageClicked イベントを発生させる必要があります。

同じアプローチを使用して、TextClicked イベントを発生させることもできます。

于 2013-04-25T12:24:58.733 に答える