我正在使用一个窗口来更改我的应用程序的数据库配置。设置按钮单击由 Config() 处理,单击时显示设置窗口。如果我关闭窗口右上角的使用十字符号,我将无法重用它显示以下异常的窗口。
窗口关闭后无法设置可见性或调用 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;
}
关闭后如何重复使用?