Дано:
- Форма MainForm, на которой расположены два текстбокса (TextBoxOne и TextBoxTwo) и кнопка buttonСallParentForm вызывающая ParentForm.
- Форма ParentForm, c кнопкой buttonCleanTextBox при нажатии на которую нужно очистить текстбоксы на первой форме.
##На ParentForm
public delegate void MethodContainer();
public event MethodContainer OnButtonOkClick;
protected virtual void OnOnButtonOkClick()
{
OnButtonOkClick?.Invoke();
}
В событии нажатия кнопки buttonCleanTextBox
private void buttonCleanTextBox_Click(object sender, EventArgs e)
{
OnOnButtonOkClick();
}
##На MainForm
Объявляем переменную класса:
public partial class FormMain : Form
{
private FormParent mFormParent;
...
На кнопке вызывающей ParentForm:
private void buttonСallParentForm_Click(object sender, EventArgs e)
{
mFormParent = new FormInputBox();
mFormParent.OnButtonOkClick += OnButtonOkClick;
mFormParent.Show();
}
В методе OnButtonOkClick:
private void OnButtonOkClick()
{
textBoxOne.ResetText();
textBoxTwo.ResetText();
mFormInputBox.OnButtonOkClick -= OnButtonOkClick;
}