将元素(Label)添加到表单中的面板

编程入门 行业动态 更新时间:2024-10-22 18:44:58
本文介绍了将元素(Label)添加到表单中的面板的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我试图使用 PanelName添加文本视图。 Controls.Add( LabelName)它在一个案例中有效,但在其他情况下无效。

案例1:我创建了一个TabControl和一个标签页,然后动态添加了另一个带有面板且包含标签的标签页。

案例2 :当我使用给定代码动态添加一个面板(已经创建)主tabcontrol时,它无法正常工作。

public Form0() { 的InitializeComponent(); //////// 案例2 //顶部面板 Panel panelTop = new Panel(); panelTop.Dock = DockStyle.Top; panelTop.BackColor = Color.Yellow; tabPage1.Controls.Add(panelTop); //标题 标签头=新标签(); Head.Name =" LAMDA"; Head.AutoSize = true; //Head.Anchor = AnchorStyles.Top& AnchorStyles.Right& AnchorStyles.Left; // Head.ForeColor = Color.Black; // Head.Size = new Size(20,10); // Head.Location = new Point(20,20); panelTop.Controls.Add(Head); Head.Parent = panelTop; // bottom // left //右边 //填写¥b $ b InitializeProfile(); }¥b $ b void InitializeProfile() { $ createTabProfile(); $ }¥b $ b void createTabProfile() ///////// CASE 1 { //个人简介attribs TabPage tab1 = new TabPage(" Profile"); tab1.BackgroundImage = Image.FromFile(" .\\BackTab.png"); tab1.BackgroundImageLayout = ImageLayout.Center; tab1.BackColor = Color.White; tabControl1.TabPages.Add(tab1); $ $ //面板创建主体$ Panel mainPanel = new Panel(); mainPanel.Dock = DockStyle.Fill; mainPanel.BackColor = DefaultBackColor; tab1.Controls.Add(mainPanel); //名称标签问候语部分¥b $ b 标签NameLabel =新标签(); NameLabel.Text =" NAME"; $ NameLabel.Location = new Point(210,0); mainPanel.Controls.Add(NameLabel); // DP PictureBox DP =新PictureBox(); DP.Image = Image.FromFile(@" .\\NarutoDP.png"); DP.Size =新尺寸(150,150); DP.Name =" DP"; DP.BorderStyle = BorderStyle.FixedSingle; DP.Location =新点(0,0); DP.Visible = true; mainPanel.Controls.Add(DP); DP.Parent = mainPanel; // tab1.Controls.Add(DP); $ }

解决方案

如果将代码从表单构造函数移动到Load或Shown事件,它是否有效?

I was trying to add a text view using PanelName.Controls.Add(LabelName) it worked in one case but doesnt working other.

Case 1: I created a TabControl and a tabpage then dynamically added another tabpage having a panel and containing label worked.

Case 2: When I added a panel dynamically to (already created) main tabcontrol using given code it doen not worked.

public Form0() { InitializeComponent(); ////////CASE 2 //Top panel Panel panelTop = new Panel(); panelTop.Dock = DockStyle.Top; panelTop.BackColor = Color.Yellow; tabPage1.Controls.Add(panelTop); //HEading Label Head = new Label(); Head.Name = "LAMDA"; Head.AutoSize = true; //Head.Anchor = AnchorStyles.Top & AnchorStyles.Right & AnchorStyles.Left; // Head.ForeColor = Color.Black; // Head.Size = new Size(20, 10); // Head.Location = new Point(20,20); panelTop.Controls.Add(Head); Head.Parent = panelTop; //bottom //left // right //fill InitializeProfile(); } void InitializeProfile() { createTabProfile(); } void createTabProfile() /////////CASE 1 { //Profile attribs TabPage tab1 = new TabPage("Profile"); tab1.BackgroundImage = Image.FromFile(".\\BackTab.png"); tab1.BackgroundImageLayout = ImageLayout.Center; tab1.BackColor = Color.White; tabControl1.TabPages.Add(tab1); //Panel creating main Panel mainPanel = new Panel(); mainPanel.Dock = DockStyle.Fill; mainPanel.BackColor = DefaultBackColor; tab1.Controls.Add(mainPanel); //Name Label Greeting part Label NameLabel = new Label(); NameLabel.Text = "NAME"; NameLabel.Location = new Point(210,0); mainPanel.Controls.Add(NameLabel); //DP PictureBox DP = new PictureBox(); DP.Image = Image.FromFile(@".\\NarutoDP.png"); DP.Size = new Size(150, 150); DP.Name = "DP"; DP.BorderStyle = BorderStyle.FixedSingle; DP.Location = new Point(0, 0); DP.Visible = true; mainPanel.Controls.Add(DP); DP.Parent = mainPanel; // tab1.Controls.Add(DP); }

解决方案

If you move the code from the form constructor to either Load or Shown event does it work?

更多推荐

将元素(Label)添加到表单中的面板

本文发布于:2023-11-06 13:42:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1563850.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:表单   面板   元素   Label

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!