C# 问题:从另一个c类向窗体添加窗体控件#

C# 问题:从另一个c类向窗体添加窗体控件#,c#,forms,controls,panel,C#,Forms,Controls,Panel,您好,我正在创建一个windows窗体应用程序,我正在尝试创建并添加一个新控件。在本例中,它是来自不同类的面板,但是,当我创建了面板并将其添加到窗体时,它不会出现?[注意:我可以使用F.text(“某些文本”)更改表单的文本;但是F.Controls.Add(panel1);不起作用] 这是我的密码: public static void Create(Form1 F) { //this works: F.Text = "DEFAULT TEXT";

您好,我正在创建一个windows窗体应用程序,我正在尝试创建并添加一个新控件。在本例中,它是来自不同类的面板,但是,当我创建了面板并将其添加到窗体时,它不会出现?[注意:我可以使用F.text(“某些文本”)更改表单的文本;但是F.Controls.Add(panel1);不起作用]

这是我的密码:

public static void Create(Form1 F)
    {
         //this works:
         F.Text = "DEFAULT TEXT";
         Panel test = new Panel();
         test.Dock = DockStyle.Fill;
         test.BackColor = System.Drawing.Color.Black;
         test.Show();
         //this does not:
         F.Controls.Add(test);
    }

如果要从其他类添加控件,请使用 控件c=fr.Controls[“controlname”]

然后将其添加到所需的表单中。 F.增加(c)

这对我来说很好

    public Form1(){
 InitializeComponent();
            Create(this);

        }

        public static void Create(Form1 F)
        {
            //this works:
            F.Text = "DEFAULT TEXT";
            Panel test = new Panel();
            test.Dock = DockStyle.Fill;
            test.BackColor = Color.Blue;

            //test.Show(); this is irrelevant
            //this does not:
            F.Controls.Add(test);

设置Form1的.Text属性是否有效?以何种方式无效?@FredrikMörk我可以使用F.Text(“某些文本”)设置表单标题;