ToolTip.Show
コントロールを含むウィンドウが非アクティブのときに、で手動で表示されるツールチップが表示されないのはなぜですか?
public class MyControl : Button
{
private _tip;
public string ToolTip
{
get { return _tip; }
set { _tip = value; }
}
private ToolTip _toolTip = new ToolTip();
public MyControl()
{
_toolTip.UseAnimation = false;
_toolTip.UseFading = false;
_toolTip.ShowAlways = true;
}
protected override void OnMouseHover(EventArgs e)
{
_toolTip.Show(_tip, this, 0, Height);
base.OnMouseHover(e);
}
protected override void OnMouseLeave(EventArgs e)
{
_toolTip.Hide(this);
base.OnMouseLeave(e);
}
}
ツールチップを画面上に無制限に表示する必要があるためToolTip.Show
、通常のToolTip
. また、コントロール自体の一部としてツールチップ テキストを表示するというアイデアも気に入っています。残念ながら、非アクティブなウィンドウに対してこの方法でツールチップを表示すると (にもかかわらずShowAlways = true
)、単に機能しません。
OnMouseHower
イベントは発生しますが、何_toolTip.Show
もしません..ウィンドウがアクティブ化されていない限り、すべてが機能します。
バウンティ
非アクティブなフォームのツールチップを表示するためのソリューションに報奨金を追加します (ツールチップのテキストが ではなくコントロールのプロパティである場合は、ソリューションを使用することをお勧めしますIContainer
)。