我的表单中有一个特殊标签,它应该在工具提示中显示一些文本。标签在表单中被声明为私有类(嵌套控件),并且应该“看到”父表单的 ToolTip 控件。
这是代码。当然,我在这里得到错误,因为在所有者表单控件集合中添加私有控件之前调用了构造函数......
编辑: 是否有可能不在构造函数中传递 form1 或 toolTip 控件?
using System;
using System.Drawing;
using System.Windows.Forms;
namespace WindowsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
this.InitializeComponent();
FormLabel myFormLabel = new FormLabel("uraaaaa!");
this.Controls.Add(myFormLabel);
myFormLabel.Location = new Point(20, 20);
}
private class FormLabel : Label
{
public FormLabel(string toolTip) : base()
{
this.Text = toolTip.ToUpperInvariant();
(this.FindForm() as Form1).toolTip1.SetToolTip(this, toolTip);
}
}
}
}