到目前为止,我一直只是向this.controls显示我以编程方式创建的控件,但现在我想为大型数据集添加Tab键功能。我添加了一个选项卡控件,在代码中我将程序控件添加到tabpage但我无法显示控件...帮助我需要做什么让控件显示
现在我拥有的是
private void Form1_Load(object sender, EventArgs e)
{
panel = new Panel();
panel.Location = position;
panel.BorderStyle = BorderStyle.Fixed3D;
panel.Width = 240;
panel.Height = 210;
company = new Label();
company.Location = new Point(panel.Location.X + 10, panel.Location.Y + 10);
company.Text = tempServer.Value.companyName;
company.Font = new Font(company.Font.FontFamily, 12, FontStyle.Bold);
tabs.TabPages["1"].Controls.Add(company);
this.Controls.Add(tabs);
this.Controls.SetChildIndex(tabs, this.Controls.Count);
}
编辑(帮助澄清) 我有一个应用程序从数据库中读取数据库中每个元组的数据库,我的WinForm应用程序创建一个新的面板,然后用动态创建的标签填充各种信息。然后偏移该位置并创建下一个面板。我被告知我现在需要我的应用程序支持选项卡。每个标签只显示这么多面板。当我试图将这些动态创建的面板添加到选项卡控件而不是this.control时,我的问题得到了解决。当我这样做时,面板和他们的信息不再被绘制,我无法弄清楚如何使面板显示
答案 0 :(得分:0)
你没有为你的标签设置Text
所以你没有看到任何东西,试试这个:
company = new Label(){Text = "some text here"};
整个代码:
private void Form1_Load(object sender, EventArgs e) {
company = new Label{Text = "some text here"};
tabs.TabPages["1"].Controls.Add(company);
this.Controls.Add(tabs);
}