У меня есть приложение wpf с кнопкой, которая открывает новое окно, в котором я хочу определить некоторые настройки. Смотрите следующий код:
public partial class MainWindow : Window
{
private SettingsWindow SettingsWindow;
public MainWindow()
{
InitializeComponent();
}
private void settings_Click(object sender, RoutedEventArgs e)
{
if (this.SettingsWindow == null)
{
SettingsWindow = new SettingsWindow(); // No reentrace here !!!
}
SettingsWindow.Show();
SettingsWindow.Focus();
}
}
Однако, когда я закрываю окно «Настройки» и хочу снова открыть его из главного окна, все приложение зависает.
Я думал, что объект будет уничтожен при закрытии и, таким образом, заново инициализирован внутри предложения if.
Должен ли я сделать переопределение в процедуре закрытия окна настроек или я что-то еще проигнорировал?