添加文本框C#

时间:2013-12-10 15:12:59

标签: c#

Program.cs 中,我添加了:

public void displayControls()
{
    TextBox tb = new TextBox();
    tb.Text = "Enter";
    tb.Location = new Point(300, 300);
    tb.Size = new Size(300, 300);
    tb.Visible = true;
    tb.Show();
    tb.BringToFront();
}

然后在:

static void Main(string[] args)
{
     this.displayControls();
}

但这不起作用。我是否需要从 Form.cs 访问表单实例并添加到该实例?我需要做什么才能使文本框在表单中可见?

感谢。

3 个答案:

答案 0 :(得分:6)

您似乎正在定位WinForm应用程序。您需要在Form.cs中执行此操作,您可以在Form_Load事件中执行此操作,例如:

private void Form1_Load(object sender, EventArgs e)
{
    TextBox tb = new TextBox();
    tb.Text = "Enter";
    tb.Location = new Point(300, 300);
    tb.Size = new Size(300, 300);
    tb.Visible = true;
    this.Controls.Add(tb); //here add it to the current form instance
}

答案 1 :(得分:3)

您应该尝试将与UI相关的元素放在 Forms.cs 中。它更容易,而且设计更好。

如果您正确单击Visual Studio解决方案上的Form1.cs元素,您可以检查是否可以访问“查看代码”选项。从这里您可以看到与UI相关的代码。

您将看到这个简单的类定义

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
    }

但是,当您检查InitializeComponent方法时,您可以看到将显示文本框的说明。不要在Form1.Designer.cs中编写代码时要小心,因为每次构建时都会自动生成代码

答案 2 :(得分:0)

displayControls应该是表单的方法,而不是程序。此外,您还需要:

this.Controls.Add(tb);

确保妥善处理