Beispiel #1
0
        /// <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);
        }
Beispiel #2
0
 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));
 }