Передача значений из другой формы Winforms

Все учебники, передающие формы в Интернете, все из формы1, затем открывают форму2, а затем передают значение.

Я хочу, чтобы что-то изменилось. form1 и form 2 открыты, поэтому, если вы нажмете ok в form2, значение, которое вы получите в форме 2, будет передано в форме 1.

ех. form1 click buttton openform2button (форма 2 показывает) напишите 7 (номер 7) в текстовом поле (в форме2) нажмите кнопку okbutton, затем форма 2 закрывается после того, как form2 закрывает текстовое поле в форме1, будет хранить данные в форме2. поэтому 7, которые вы поместите в текстовое поле form2, будут сохранены и перенесены в текстовое поле form1. это возможно?

Существует несколько способов сделать это:

  • Поделите объект модели между form1 и form2.
  • У формы 2 выставляются события, к которым обращается form1. Передайте значения в аргументах события.
  • Если form2 выставляет значение как общедоступное свойство, которое form1 читает после закрытия формы2.

Вы можете просто иметь публичное свойство в Form2, которое Form1 получит, когда ему нужно увидеть значение. Что-то вроде этого:

using(Form2 form2 = new Form2()) { if(form2.ShowDialog() == DialogResult.OK) { form1Logger(form2.NumberWritten); } } 

Свойство может быть чем-то простым:

 class Form2 { public String NumberWritten { get{return textBox.Value;} } }