我有一些控件,我想在鼠标悬停在它上面时显示ToolTip
。我怎样才能做到这一点?我想知道如何在代码中正确地执行此操作,但也想知道如何在设计器中执行此操作(工具箱中有一个ToolTip
组件,但我并不完全......得到它。)
如果这是重复的话,我不会感到惊讶,但我只能找到更高级,特定情况下的问题。我想了解基础知识。
答案 0 :(得分:191)
Here是您使用代码进行此操作的文章
private void Form1_Load(object sender, System.EventArgs e)
{
// Create the ToolTip and associate with the Form container.
ToolTip toolTip1 = new ToolTip();
// Set up the delays for the ToolTip.
toolTip1.AutoPopDelay = 5000;
toolTip1.InitialDelay = 1000;
toolTip1.ReshowDelay = 500;
// Force the ToolTip text to be displayed whether or not the form is active.
toolTip1.ShowAlways = true;
// Set up the ToolTip text for the Button and Checkbox.
toolTip1.SetToolTip(this.button1, "My button1");
toolTip1.SetToolTip(this.checkBox1, "My checkBox1");
}
答案 1 :(得分:136)
将工具提示控件从工具箱拖到表单上。你真的不需要给它任何名称以外的属性。然后,在希望有工具提示的控件属性中,查找一个新属性,其中包含刚刚添加的工具提示控件的名称。默认情况下,当光标悬停控件时,它会为您提供工具提示。
答案 2 :(得分:39)
这里的技巧是ToolTip控件是一个扩展器控件,这意味着它将扩展窗体上其他控件的属性集。在幕后,这是通过生成像Svetlozar的答案中的代码来实现的。还有其他控件以相同的方式工作(例如HelpProvider
)。
答案 3 :(得分:7)
C#中的ToolTip很容易添加到几乎所有的UI控件中。您无需为此添加任何MouseHover事件。
这是怎么做的 -
向表单添加ToolTip对象。一个对象足以满足整个表单。
ToolTip toolTip = new ToolTip();
使用所需文本将控件添加到工具提示。
toolTip.SetToolTip(Button1,"Click here");
答案 4 :(得分:1)
我这样做的方法是:只需将事件添加到任何控件中,设置控件的标签,然后添加条件以处理相应控件/标签的工具提示。
acctnbr
答案 5 :(得分:-2)
只需订阅控件的ToolTipTextNeeded事件,然后返回更简单的e.TooltipText。