Cha*_*ion 6 c# user-controls tooltip winforms
我有一个 WinForms 应用程序。每个窗体和用户控件设置其工具提示如下:
// in the control constructor
var toolTip = new ToolTip();
this.Disposed += (o, e) => toolTip.Dispose();
toolTip.SetToolTip(this.someButton, "...");
toolTip.SetToolTip(this.someCheckBox, "...");
...
Run Code Online (Sandbox Code Playgroud)
但是,当我将鼠标悬停在控件上时,工具提示不会出现。这是使用工具提示的合适方式吗?在应用程序的另一部分(例如,侦听某些事件)中是否会发生一些会阻止工具提示工作的事情?
请注意,我的外部窗体的工具条按钮(通过按钮的工具提示属性配置)上的工具提示按预期工作。
编辑:
我已经观察到更多,我注意到有时工具提示确实出现了,它只是非常“片状”。基本上,有时当我将鼠标悬停在控件上时,它会非常短暂地显示然后闪烁。我可以使用 .Show() 和长 AutoPopDelay 手动显示它,但它永远不会消失!
你的代码对我来说似乎没问题。我在你的代码中找不到任何错误。但是,只有当控制被禁用时它才可能失败。顺便说一句,您可以尝试另一种类似的方法。但是,我不想建议您像这样显示工具提示。
private void someButton_MouseEnter(...)
{
toolTip.Show("Tooltip text goes here", (Button)sender);
}
Run Code Online (Sandbox Code Playgroud)
您还可以在方法中指定工具提示的显示位置.Show()
。您可以使用一些重载函数。有关方法的更多信息,请阅读msdnToolTip.Show()
。
归档时间: |
|
查看次数: |
10984 次 |
最近记录: |