是的,这个问题已经被问过here https://stackoverflow.com/questions/1165540/how-do-i-remove-a-tooltip-currently-bound-to-a-control at SO.
问题是该问题的解决方案是隐藏工具提示,我真的需要删除而不是隐藏它。
我使用我制作的几个函数向表单中的多个控件添加工具提示。
有两个函数,一个用于设置工具提示在鼠标悬停时显示,另一个用于始终显示工具提示。
只有一个失踪了。用于删除特定控件已设置或正在显示的任何工具提示。
就像是
tooltip.remove(TextBox1);
事情就这么简单,我只需要设置工具提示所在的控件。
我尝试了几件事但没有成功。
Thanks.
EDIT:
这就是我使用代码添加工具提示的方式。
这是错误的编码方式
我设置和显示工具提示的代码:
public class UserInterface
{
public void SetTooltip(Control Object, string Message, string Title, ToolTipIcon icon, Boolean isBallon, Boolean showAlways)
{
ToolTip Tip = new ToolTip();
Tip.UseAnimation = true;
Tip.UseFading = true;
Tip.ToolTipIcon = icon;
Tip.IsBalloon = isBallon;
Tip.ShowAlways = showAlways;
Tip.ToolTipTitle = Title;
Tip.SetToolTip(Object, Message);
}
public void ShowTooltip(Control Object, string Message, string Title, ToolTipIcon icon, Boolean isBallon, Boolean showAlways)
{
ToolTip Tip = new ToolTip();
Tip.UseAnimation = true;
Tip.UseFading = true;
Tip.ToolTipIcon = icon;
Tip.IsBalloon = isBallon;
Tip.ShowAlways = showAlways;
Tip.ToolTipTitle = Title;
Tip.Show(Message, Object);
}
}