16967


GoogleChromeではお気に入りフォルダや設定ボタンなど、一度フォルダをクリックしなくても押したまま下に移動させそのまま項目の位置にボタンを離せば実行されます。

それをタスクトレイのContextMenuStripに実装させたいのですが、可能でしょうか？


CC BY-SA 3.0
2015-09-26T14:21:15.413
16964
2015-09-26T15:35:48.400
7973
question
c#
シームレスメニューセレクト


いまいち要件が分かりませんが、

  1. 通知アイコン上でマウスボタンを押下し、
  2. 表示されるメニュー上をボタンを放さずに移動し、
  3. ボタン解放時にポイントされているメニューを実行する

という仕様を想定しているのであれば、通知領域のアイコンはOS標準でドラッグ可能ですので止めた方がよいです。そもそも`NotifyIcon`には`MouseDown`イベントがありますが、上記の理由によりマウスを放すまではイベントが発生しませんので正攻法では実装できません。

また箇条書きにしたような要件ではなくアイコンをクリックした後の動作をカスタマイズしたいのであれば、`ContextMenuStrip`プロパティを設定するのではなく`MouseClick`イベント等でメニューに似せたフォームを表示することで原理的にはいくらでもカスタマイズ可能です。


CC BY-SA 3.0
2015-09-26T15:35:48.400
16967
2015-09-26T15:35:48.400
5750
16964
answer