/// <summary> /// Responds when a panel is closed and removes the view model from the collection /// </summary> /// <param name="e">The <see cref="DockItemClosedEventArgs"/></param> private void PanelClosed(DockItemClosedEventArgs e) { foreach (var dockPanelViewModel in e.AffectedItems.Select(p => p.DataContext).OfType <IPanelViewModel>()) { this.DockPanelViewModels.Remove(dockPanelViewModel); } }
/// <summary> /// Executed when the user closed an item in the <see cref="DockLayoutManager"/>. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="DockItemClosedEventArgs"/> instance containing the event data.</param> private void DockLayoutManagerOnDockItemClosed(object sender, DockItemClosedEventArgs e) { foreach (var affectedItem in e.AffectedItems) { var itemViewModel = affectedItem.DataContext as DashboardItemViewModel; if (this.ViewModel.Items.Contains(itemViewModel)) { this.ViewModel.CloseItem(itemViewModel); } } }
private void DockLayoutManager_OnDockItemClosed(Object sender, DockItemClosedEventArgs e) { foreach (var item in e.AffectedItems) { if (item == HostView) { HostView = null; } else if (item == MapView) { MapView = null; } } }
void dockManager_DockItemClosed(object sender, DockItemClosedEventArgs e) { DocumentPanel document = e.Item as DocumentPanel; if (document != null) { Note note = Note.GetNote(document); if (note != null && AllNotes.Remove(note)) { dockManager.DockController.RemovePanel(document); Note.SetNote(document, null); } } }
private void DockLayoutManagerOnDockItemClosed(object sender, DockItemClosedEventArgs e) { e.AffectedItems.Apply(async f => await((ModuleViewModel)f.DataContext).Deactivate(true).ConfigureAwait(false)); }
/// <summary> /// Handles a closed panel event and removes the associated <see cref="IPanelView"/> from the region /// </summary> /// <param name="region">The <see cref="IRegion"/></param> /// <param name="regionTarget">The <see cref="DocumentGroup"/></param> /// <param name="s">The sender</param> /// <param name="e">The <see cref="NotifyCollectionChangedEventArgs"/></param> private void OnPanelClosed(IRegion region, DocumentGroup regionTarget, object s, DockItemClosedEventArgs e) { foreach (var panel in e.AffectedItems) { var docPanel = panel as DocumentPanel; if (docPanel != null) { var view = this.viewPanelPair.SingleOrDefault(x => x.Value == docPanel).Key; if (view != null) { this.viewPanelPair.Remove(view); region.Remove(view); } } } }
void DockItemClosed(object sender, DockItemClosedEventArgs e) { Debug.WriteLine("DockItemClosed: {0}", e.Item); dockLayoutManager1.ClosedPanels.Clear(); // Don't leave panels in semi-closed state }
/// <summary> /// Handles the Dock Panel close event /// </summary> /// <param name="region">the region</param> /// <param name="regionTarget">the region target</param> /// <param name="s">the sender</param> /// <param name="e">the NotifyCollectionChangedEventArgs</param> private void OnPanelClosed(IRegion region, TabbedGroup regionTarget, object s, DockItemClosedEventArgs e) { foreach (var panel in e.AffectedItems) { var docPanel = panel as LayoutPanel; if (docPanel == null) { continue; } var view = this.viewPanelPair.SingleOrDefault(x => x.Value == docPanel).Key; if (view == null) { continue; } var regionAttribute = view.GetType().GetCustomAttributes(typeof(PanelViewExportAttribute), true).SingleOrDefault() as PanelViewExportAttribute; if (regionAttribute != null && regionAttribute.Region == region.Name) { this.viewPanelPair.Remove(view); region.Remove(view); } } }
private void Preview_DockItemClosed(object sender, DockItemClosedEventArgs e) { throw new NotImplementedException(); }
private void DockLayoutManager_OnDockItemClosed(object sender, DockItemClosedEventArgs e) { e.Item.Closed = true; }
private void DockLayoutManager_DockItemClosed(object sender, DockItemClosedEventArgs e) { }