6

ユーザーコントロールがあります。ユーザー コントロール内には、画面領域全体を使用する PictureBox (Dock.Fill) があります。キーボード イベント (貼り付け機能を実装するための Ctrl-V など) をキャッチしたいと考えています。

ただし、PictureBox にはキー イベントはありません。PictureBox の下の次のレイヤー (つまり、ユーザー コントロール) は KeyUp イベントを取得しますか? KeyUp イベント ハンドラーをユーザー コントロールに追加すると、機能しますか? WPF にはルーティング イベントのソリューションがあることを知っています。それはwinformsの世界でどのように機能しますか?

4

2 に答える 2

5

フォームでイベントを受け取ることができます。Form.KeyPreviewを参照してください。

このプロパティが true に設定されている場合、フォームはすべての KeyPress、KeyDown、および KeyUp イベントを受け取ります。フォームのイベント ハンドラーがキーストロークの処理を完了すると、キーストロークはフォーカスのあるコントロールに割り当てられます。

于 2012-09-28T12:11:42.273 に答える
1

使用できますMouseUp, MouseEnter, MouseDown or MouseHover ....

マウス ダウンに関するリンク: http://msdn.microsoft.com/en-us/library/system.windows.forms.control.mousedown.aspx

リンク : http://msdn.microsoft.com/en-us/library/system.windows.forms.picturebox.aspx

于 2012-09-28T12:08:03.053 に答える