2013-12-10 4 views
0

В Program.cs я добавил:Добавление текстового поля в C#

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 и добавить к этому экземпляру? Что мне нужно сделать, чтобы это текстовое поле было видимым в форме?

Спасибо.

+0

Что вы пытаетесь сделать, программно создать текстовое поле во время выполнения, чтобы изменить внешний вид формы? – sab669

+0

Где именно находится? – Steve

+2

У этого кода больше ошибок, чем строк кода ... – RononDex

ответ

6

Похоже, что вы ориентируетесь приложения WinForm. Вы должны сделать это в вашем Form.cs, Вы можете сделать это в случае как:

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 
} 
+0

Как назвать эту функцию? –

+0

'Form1_Load' будет вызываться автоматически, как только ваша форма загружается. –

+3

@Harikrishnan, вам не нужно вызывать эту функцию, вам нужно убедиться, что ваша форма имеет событие 'Form_Load', самым простым способом было бы дважды щелкнуть форму в дизайнере, которая будет прикреплять событие Form_Load ваша форма. Там вы можете иметь такие строки, как ответ, или вывести их на функцию, и вызвать это из 'Form_Load', ** просто убедитесь, что ** для этого нужно. This.Controls.Add (tb);' – Habib

0

displayControls должен быть метод формы, а не программы. Кроме того, вы будете нуждаться:

this.Controls.Add(tb); 

, чтобы убедиться, что он получает утилизировать

3

Вы должны попытаться поставить UI связанные элементы в Forms.cs. Это проще, и у него лучший дизайн.

Вы можете проверить, что если вы щелкните правой кнопкой мыши элемент Form1.cs в своем решении Visual Studio, вы можете получить доступ к опции «Просмотр кода». Отсюда вы можете увидеть код, связанный с пользовательским интерфейсом.

Вы увидите этого простого определение класса

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

Однако при проверке методы InitializeComponent, вы можете увидеть инструкции, которые сделают текстовое поле появится. Будьте осторожны в том, чтобы не писать код в Form1.Designer.cs, поскольку он автоматически генерирует код при каждом его создании.

Смежные вопросы