2011-07-13 11 views
0

コントロールにTooltipTextを設定すると、ユーザーがコントロール上でマウスを動かすとツールヒントのテキストが表示されます。ツールチップは、この目的のためにMouseEnterやMouseLeaveなどを検出しますか?ツールヒントは、コントロールのポップアップをどのように表示しますか?

ツールチップがコントロールのポップアップをどのように表示するのか知りたいですか?

名前が「UserControlX」のユーザーコントロールがあるとします。 UserControlXでは、ボタンを置いてDockプロパティをFillに設定します。 Form1にUserControlXを追加し、ツールヒントを追加してこのユーザーコントロールにテキストを設定します。ツールヒントは表示されません。なぜならユーザーはユーザーコントロールではなくユーザーコントロールのボタン上でマウスを動かしているからです。ツールヒントは表示されません。

UserControlXでマウスを動かすと、ツールチップが表示されるようにこの問題を解決する方法を教えてください。ありがとう。

+0

ユーザーコントロールの代わりにツールチップをボタンに置​​くことはできませんか? –

+0

この方法でうまくいきます。しかし、私はこの方法を使用して好きではありません。私はUserControlXで、特にUserControlXが多くの子(コントロール)を持っている場合には、特に処理したい。 UserControlXにButton1とButton2の2つのコントロールがあるとします。 Button1 - >ツールチップが表示され、Button2 - >ツールチップが再び表示される - >私はこのように好きではない。ありがとう。 –

答えて

0

マウスオーバーで表示されるツールチップは、コントロールのデフォルトテンプレート内で定義されていると思います。デフォルトのテンプレートを表示すると、そこにツールチップへの参照が表示されます。さらに進んでツールヒントの既定のテンプレートを表示すると、そのテンプレートがどのように構成されているか、どのイベントをリッスンするかがわかります。

あなたの質問に答えるには、Adrianが提案したことを実行して、ボタンと親コントロールのツールチップを置くことができます。

少しばかり混乱する時間がある場合は、ツールヒントで表示されたイベントなどがボタンに表示されているかどうかを確認してから、親コントロールのツールチップを手動で呼び出すことができます。それはハックと見なすことができますが、おそらく試してみる価値があります。

関連する問題