public void ActivateOrCreate() { var current = CurrentOrNull; if (current == null) { var view = GetView(); var window = new ScheduleListWindow() { DataContext = view, }; current = new State(window, view); CurrentOrNull = current; window.Closed += (sender, e) => { current.Dispose(); CurrentOrNull = null; }; window.Show(); } else { current.Window.Activate(); } }
public State(ScheduleListWindow window, ScheduleListView view) { Window = window; View = view; }