I have a window, it will do some checking before it is shown.
public class MyDlg : Window { public MyDlg() { Initialized += new EventHandler(Window_Initialized); } private void Window_Initialized(object sender, EventArgs eventArgs) { if (!/*do some checking*/) { Loaded += (s, e) => Close(); } } } If "do some checking" fail, the above code will close my window immediately after the window is loaded. However this is too late because I can see the window just appear and disappear.
How can I close my window without showing it?
EDIT: The one who will construct MyDlg is like:
MyDlg dlg = new MyDlg (); dlg.ShowDialog(); But it is hard for me to prevent calling 'ShowDialog()', because they are written by other people (I'm trying to write MyDlg in some library)