2015-07-20 6 views
-1

Я должен создать три текстовых поля при нажатии кнопки «Добавить». Первоначально я пытался создать одно текстовое поле, но не могу сделать то же самое. Я получил помощь от этого форума, а также, http://csharp.net-informations.com/gui/dynamic-controls-cs.htm.Невозможно создать текстовые поля динамически

Я не вижу никаких текстовых полей при нажатии кнопки «Добавить».

namespace DataDashBoard.UI 
{ 
    public partial class DataForm : Form 
    { 
     int cLeft = 1; 

     public DataForm() 
     { 
      InitializeComponent(); 
     } 


     public TextBox AddNewTextBox() 
     { 
      TextBox txt = new TextBox(); 
      this.Controls.Add(txt); 
      txt.Top = cLeft * 25; 
      txt.Left = 100; 
      txt.Text = "TextBox " + this.cLeft.ToString(); 
      cLeft = cLeft + 1; 
      return txt; 
     } 

     private void btnAdd_Click(object sender, EventArgs e) 
     { 
      AddNewTextBox(); 
     } 
    } 
} 

Пожалуйста, помогите !!!

+0

Я только что скопировал ваш код в мое приложение winform, и ваш код не имеет ничего плохого. – GIANGPZO

ответ

0

Удостоверьтесь, что обработчик события btnAdd_Click называется.

Вставьте в него точку останова и запустите приложение в режиме отладки.

Приветствия

+0

да, я отлаживаю свой код. Выполнение происходит в событии 'btnAdd_Click', а затем вызывается метод' public TextBox AddNewTextBox() '. Но также текстовое поле не отображается в форме. Пожалуйста, предложите – user4221591

1

ли вы связать кнопку обработчик событий с событием нажатия кнопки? Вы можете сделать это, выбрав кнопку в дизайнере форм, а затем показывая события на панели свойств.

Если вы скопировали код со страницы, с которой вы связались, не создавая связи между кнопкой и обработчиком события, кнопка ничего не сделает.

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