Используйте .Show () вместо .ShowDialog ().
Ручка Деактивировать событие в дочерней форме.
private void frmAdvancedSearch_Deactivate(object sender, EventArgs e)
{
this.Close();
}
Это закрывает дочернюю форму, когда пользователь щелкает вне дочернего элемента.
Если вы используете .ShowDialog () для выполнения каких-либо действий после закрытия дочернего элемента,
используйте .show () и переопределите событие 'formclosing' child в родительском элементе. Так что, когда дочерняя форма закроется, ты будешь делать там свои вещи.
advancedSearch.FormClosing += AdvancedSearch_FormClosing;
advancedSearch.ShowDialog();
private void AdvancedSearch_FormClosing(object sender, FormClosingEventArgs e)
{
var advanceSearch = sender as frmAdvancedSearch;
if (advanceSearch.SelectedItem != null)
{
myColumnComboBox.Text = advanceSearch.SelectedItem.Name;
}
}
Надеюсь, это поможет.