/// <summary> /// Handles when the selected objects have changed. /// </summary> void UpdateSelection() { // Notify that the collection has changed ChangeSelected(); if (SelectedChanged != null) { SelectedChanged.Raise(this, EventArgs.Empty); } // Ensure the focused object is valid if (Focused == null || !_selectedObjs.Contains(Focused)) { Focused = _selectedObjs.FirstOrDefault(); } }