or
<telerik:RadDocking PreviewClose="RadDocking_PreviewClose" x:Name="dock"> <telerik:RadDocking.DocumentHost> <telerik:RadSplitContainer > <telerik:RadPaneGroup prism:RegionManager.RegionName="{x:Static const:RegionConstants.CentralRegionName}" x:Name="centralGroup" /> </telerik:RadSplitContainer> </telerik:RadDocking.DocumentHost> <telerik:RadSplitContainer x:Name="leftContainer" InitialPosition="DockedLeft"> <!-- Menu --> <telerik:RadPaneGroup x:Name="MenuGroup"> <telerik:RadPane x:Name="MenuPanel" Header="Menu" CanUserClose="False"> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*" /> </Grid.RowDefinitions> <telerik:RadTreeView x:Name="principalMenuTreeView" Grid.Row="1" VerticalAlignment="Stretch" IsLineEnabled="True" ScrollViewer.HorizontalScrollBarVisibility="Auto" SelectionMode="Single" IsEditable="False" IsDragDropEnabled="True"> <telerik:RadTreeViewItem Header="Monitoring" IsExpanded="True"> <telerik:RadTreeViewItem Header="All Customers" Command="{Binding LoadViewCommand}" CommandParameter="{x:Static const:ViewConstants.AllCustomersView}" /> </telerik:RadTreeViewItem> </telerik:RadTreeView> </Grid> </telerik:RadPane> </telerik:RadPaneGroup> </telerik:RadSplitContainer></telerik:RadDocking>private void DisplayViewCommand(object viewName){ IRegion region = this.regionManager.Regions[RegionConstants.CentralRegionName]; object view = null; switch (viewName as string) { case ViewConstants.AllCustomersView: view = ServiceLocator.Current.GetInstance<AllCustomersView>(); break; default: break; } if (region.Views.Contains(view)) { region.Remove(view); } region.Add(view); region.Activate(view);}private void RadDocking_PreviewClose(object sender, StateChangeEventArgs e){ if (e.Panes != null && e.Panes.Count() > 0) { RadPane toDelete = e.Panes.FirstOrDefault(); IRegion mainRegion = this.regionManager.Regions[RegionConstants.CentralRegionName]; if (mainRegion.Views.Contains(toDelete)) { mainRegion.Remove(toDelete); } } e.Handled = true;}case NotifyCollectionChangedAction.Reset: regionTarget .EnumeratePanes() .ToList() .ForEach(p => p.RemoveFromParent()); foreach (object view in region.Views) { regionTarget.Items.Add(view); /!\ On this line, the exception occurs } break;