/// <summary> /// Remove a layout item from this instance. /// </summary> /// <param name="item">The item to remove.</param> /// <returns>True if the item was sucsessfully remove, else false.</returns> public bool RemoveLayoutItem(ILayoutItemViewModel item) { bool sucsess; switch (item) { case IToolViewModel tool: sucsess = AnchorablesSource.Remove(tool); break; case IDocumentViewModel document: sucsess = DocumentsSource.Remove(document); break; default: sucsess = false; break; } if (item == ActiveContent && sucsess) { ILayoutItemViewModel newActive = DocumentsSource.FirstOrDefault(); if (newActive is null) { newActive = AnchorablesSource.FirstOrDefault(); } ActiveContent = newActive; } return(sucsess); }
void IFloatingPaneHost.RemoveViewModel(IViewModel iViewModel) { if (DocumentsSource.Contains(iViewModel)) { DocumentsSource.Remove(iViewModel); } else if (ToolsSource.Contains(iViewModel)) { ToolsSource.Remove(iViewModel); } }
public void RemoveDocument(string id) { DocumentsSource.Remove(DocumentsSource.First(x => x.Id.Value == id)); }