我正在使用标签控件,并且有一个标签显示我要在所有三个标签中显示的客户名称。但是,如果我把它放在标签1上,那么它就不会显示在标签2和3上,甚至认为标签的名称是唯一的。有没有办法做到这一点 ?或者我必须创建3个不同的标签?非常感谢。
答案 0 :(得分:1)
这可能适合你。更改标签时。将标签添加到TabPage的Controls集合中。将标签添加到新TabPage时,它会从之前的TabPage中删除,因此每次更改标签时都必须重新添加标签。
public partial class Form1 : Form
{
Label label = new Label() { Text = "Hello World" };
public Form1()
{
InitializeComponent();
tabControl1.TabPages[0].Controls.Add(label);
}
private void tabControl1_Selected(object sender, TabControlEventArgs e)
{
e.TabPage.Controls.Add(label);
e.TabPage.Controls.SetChildIndex(label, 0);
}
}
答案 1 :(得分:0)
在设计时将Tab label1
置于TabPage中的所需位置,然后使用以下代码将其切换到Load()事件中的Form:
private void Form1_Load(object sender, EventArgs e)
{
Point pt = label1.PointToScreen(new Point(0, 0));
label1.Parent = this;
label1.Location = this.PointToClient(pt);
label1.BringToFront();
}
答案 2 :(得分:0)
你应该放置2个面板。 第一个面板应具有Docking = Top且高度等于标签的高度。把你的标签放在那里(在第一个面板上)。 第二个面板应该有Docking = Fill,将你的标签控件放在第二个面板上。