private void RemoveScopedRegionManagerFromView(IModelVisualizer modelVisualizer) { IRegionManagerAware regionManagerAware = modelVisualizer.ViewModel as IRegionManagerAware; if (regionManagerAware != null) { RegionManager.SetRegionManager(modelVisualizer.View, null); } }
private void RegisterScopedRegionManagerToView(IModelVisualizer modelVisualizer) { IRegionManagerAware regionManagerAware = modelVisualizer.ViewModel as IRegionManagerAware; if (regionManagerAware != null) { RegionManager.SetRegionManager(modelVisualizer.View, regionManagerAware.RegionManager); } }
private bool IModelVisualizerContainsInnerView(object view, object innerView) { IModelVisualizer visualizer = view as IModelVisualizer; if (visualizer == null) { return(false); } return(visualizer.ViewModel == innerView); }
/// <summary> /// If the item in the region is a window (possibly wrapped in a modelvisualizer), then get it /// </summary> /// <param name="item"></param> /// <returns>the item as a window</returns> private IWindow GetWindow(object item) { IWindow window = item as IWindow; if (window == null) { IModelVisualizer modelVisualizer = item as IModelVisualizer; window = modelVisualizer.View as IWindow; } return(window); }