protected override void OnUnloaded() { this.DataContext = null; this.viewModel.InheritedViewModel = null; this.viewModel.Dispose(); this.viewModel = null; }
public ViewModelControlRecipeBreakdown(IViewModelWithRecipe inheritedViewModel) { this.InheritedViewModel = inheritedViewModel; ((BaseViewModel)this.inheritedViewModel).PropertyChanged += this.InheritedViewModelOnPropertyChangedHandler; this.RefreshRecipe(); }
private static void InjectControl(Control control, IViewModelWithRecipe viewModel) { var windowWrapper = VisualTreeHelperExtension.FindParentOfType(control, typeof(BaseUserControlWithWindow)); var window = ((BaseUserControlWithWindow)windowWrapper).Window; var controlRecipeBreakdown = new ControlRecipeBreakdown(); controlRecipeBreakdown.InheritedViewModel = viewModel; InjectedControls.Add(control, controlRecipeBreakdown); window.AddExtensionControl(controlRecipeBreakdown); }
private void RecipesBrowserRecipeDetailsControlLoadedHandler( RecipesBrowserRecipeDetailsControl control, IViewModelWithRecipe viewModel) { InjectControl(control, viewModel); }
private static void CraftingRecipeDetailsControlLoadedHandler( CraftingRecipeDetailsControl control, IViewModelWithRecipe viewModel) { InjectControl(control, viewModel); }