public void Dispose() { //ReleaseHandle(); if (_CustomControl != null && _CustomControl.MSDialog != null) { _CustomControl.MSDialog.Disposed -= new EventHandler(DialogWrappper_Disposed); _CustomControl.MSDialog.Dispose(); _CustomControl.MSDialog = null; } if (_CustomControl != null) { _CustomControl.Disposed -= new EventHandler(DialogWrappper_Disposed); _CustomControl.Dispose(); _CustomControl = null; } if (_BaseDialogNative != null) { _BaseDialogNative.Dispose(); _BaseDialogNative = null; } NativeMethods.DestroyWindow(_hDummyWnd); DestroyHandle(); }