Проблема заключается в том, что вы создаете экземпляр MyForm
в начале класса и используете его каждый раз при нажатии кнопки.К сожалению, это не сработает.Как только форма закрыта, она будет удалена и, следовательно, больше не действительна.Это бросит в следующий раз, когда вы попытаетесь показать это
Самый простой способ обойти это - создать и отобразить форму целиком в пределах события нажатия кнопки.Не используйте его повторно между щелчками.
void OnButtonClick(object sender, EventArgs e) {
using (MyForm myForm = new MyForm()) {
myForm.txtBox.AppendText("Test");
myForm.ShowDialog(this);
}
}
Если есть какое-то состояние, которое необходимо сохранять между щелчками, например, текст, сохраните это, но не экземпляр Form
.