ウィンドウを使用して、アプリケーションのデータベース構成を変更しています。設定ボタンのクリックは Config() によって処理され、クリックすると設定ウィンドウが表示されます。ウィンドウの右隅にあるクロス記号を使用して閉じると、次の例外が表示されているウィンドウを再利用できません。
ウィンドウを閉じた後は、Visibility を設定したり、Show、ShowDialog、または WindowInteropHelper.EnsureHandle を呼び出したりすることはできません。
ConfigDialogBox configDlg = new ConfigDialogBox();
private void SettingsChanged(object sender, RoutedEventArgs e)
{
Database.host = configDlg.host;
Database.port = configDlg.port;
Database.user = configDlg.user;
Database.password = configDlg.password;
Database.database = configDlg.database;
ConfigDlg.Visibility = Visibility.Hidden;
}
private void Config(object sender, RoutedEventArgs e)
{
configDlg.Show();
configDlg.okButton.Click+=new RoutedEventHandler(SettingsChanged);
configDlg.cancelButton.Click+=new RoutedEventHandler(SettingsChanged);
}
void cancel_Click(object sender, RoutedEventArgs e)
{
ConfigDlg.Visibility = Visibility.Hidden;
}
閉店後の再利用はどうすればいいですか?