public void CloseWindow(ApplicationWindow window) { if (window.Close() != IntPtr.Zero) { CairoLogger.Instance.Debug($"Removing window {window.Title} from collection due to no response"); window.Dispose(); TasksService.Instance.Windows.Remove(window); } }
private void removeWindow(IntPtr hWnd) { if (Windows.Any(i => i.Handle == hWnd)) { do { ApplicationWindow win = Windows.First(wnd => wnd.Handle == hWnd); win.Dispose(); Windows.Remove(win); }while (Windows.Any(i => i.Handle == hWnd)); } }