我有一个textBox,当用户输入错误信息时,它应该显示一个带有解释的工具提示。
但是我无法将工具提示放在正确的位置。
我的文本框位于groupBox和TabControl中。我试过这个:
Point locationOnForm = new Point(this.Left + tabCon.Left + gbDocs.Left + tbKey.Left, this.Top + tabCon.Top + gbDocs.Top + tbKey.Top);
tooltipError.Show("Test", this, locationOnForm , 3000);
但是这个位置总是在附近,从不在正确的位置。
答案 0 :(得分:2)
您可以轻松获得绝对定位。此示例将ToolTip放在TextBox的右下角。
Point pt = new Point(0, 0);
pt.Offset(textBox1.Width - 1, textBox1.Height - 1);
toolTipError.Show("Test", textBox1, pt, 3000);
请注意,您提供给工具提示的Point
与您提供的Control
相关,在本例中为textBox1
。
答案 1 :(得分:1)
这会将您的工具提示放在文本框的右侧
tooltipError.Show("TT Text", myGroupBox, textBox1.Left + textBox1.Width + 5, textBox1.Top, 3000);
注意 - 您需要将GroupBox设置为窗口 - 您的工具提示必须显示在与文本框相同的坐标中。效果很好。
在此注释中,为什么不使用专为此设计的ErrorProvider
?