在C#中动态创建控件的方法

Haz*_*ior 0 .net c# controls runtime

有什么方法可以在C#中动态创建控件?

这首先是对象,但说控件会更准确.我的术语搞砸了.谢谢乔尔.

编辑{在运行时创建的控件.并且能够被程序访问和编辑.这有帮助吗?}

我喜欢动态创作的想法,并想知道有什么方法可以做到这一点.

每个答案只有一个,我想看看人们如何排名.

例如

private Label _lblCLastName = new Label(); 
private static List<ChildrenPanel> _ListCP = new List<ChildrenPanel>(); 

public void CreatePanel(Panel Container) 
{ 
    // Created Controls
    #region Controls 
    _pnlStudent.Controls.Add(_lblCLastName); 
    //  
    // lblCLastName 
    //  
    _lblCLastName.AutoSize = true; 
    _lblCLastName.Location = new System.Drawing.Point(6, 32); 
    _lblCLastName.Name = "lblCLastName"; 
    _lblCLastName.Size = new System.Drawing.Size(58, 13); 
    _lblCLastName.TabIndex = 10; 
    _lblCLastName.Text = "Last Name"; 

    // Adds controls to selected forms panel 
    Container.Controls.Add(_pnlStudent); 
    // Creates a list of created panels inside the class 
    // So I can access user input 
    ListCP.Add(this); 

} 
Run Code Online (Sandbox Code Playgroud)

这是一个与我所说的很接近的代码片段.我发了另一篇文章,但没有把这个问题写得很对.我将删除它,但它仍然是可见的.

如果还有问题请建设性我不介意否定输入,只要它有用.

编辑:我能够得到一些我正在寻找的答案.谢谢所有回复的人.当我能够时,我会关闭它.如果其他人可以关闭它,将不胜感激.

Hog*_*gan 9

我使用new关键字动态创建对象.

  • 谢谢你.我没有考虑新关键字的这种奇特用法;) (3认同)