C # Получение значения textBox из предыдущей формы - PullRequest
0 голосов
/ 23 декабря 2010

У меня есть две формы.

Форма A требует, чтобы пользователь вводил текст в два текстовых поля: имя и номер.

Форма B получает текст из двух текстовых полей в форме A и отображает текст в двух метках.

Прямо сейчас, когда программа запущена, две метки не отображают тексты.

Пожалуйста, помогите, заранее спасибо.

Ниже приведены мои коды для формы B:

        Menu_Privacy_Cleaner_Investigator pci = new Menu_Privacy_Cleaner_Investigator();

        String name = pci.textBoxName.Text;
        String number = pci.textBoxNumber.Text;

        labelName.Text = name;
        labelNumber.Text = number;

Ответы [ 3 ]

2 голосов
/ 23 декабря 2010

У вас есть несколько вариантов .. Вы можете:

1- Отправьте значения текстового поля в форму B, например BForm B = new BForm(textBoxName.text,textBoxNumber.text)

2- Иметь публичное свойство в FormA, которое получает значения текстовых полей, чтобы вы могли использовать их в FormB

1 голос
/ 23 декабря 2010

Это не будет работать, так как создаваемый вами экземпляр FormA не является исходным экземпляром, который вызвал / создал FormB.

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

Кроме того, при создании формы b из формы a вам нужно будет передать ссылку формы a на форму b.

Самый простой способ для formA - передать значения текстовых полей в форму b.

Итак, где вы создаете formb, делайте что-то вроде

FormB b = new FormB();
b.StringValue1 = pci.textBoxName.Text;
b.Stringvalue2 =  pci.textBoxNumber.Text;
b.Show();
0 голосов
/ 23 декабря 2010

Взгляните на шаблон проектирования MVC, может быть, ваш путь - просто не очень хороший способ сделать это;)

http://c2.com/cgi/wiki?ModelViewController

...