protected override void OnUnloaded()
        {
            base.OnUnloaded();

            this.DataContext = null;
            this.ViewModel.Dispose();
            this.ViewModel = null;
            Instance       = null;
        }
        protected override void OnLoaded()
        {
            base.OnLoaded();

            var recipes           = this.GetAllRecipes();
            var recipesCountTotal = recipes.Count;

            this.RemoveLockedRecipes(recipes);

            this.DataContext = this.ViewModel = new WindowCraftingStationViewModel(
                recipes,
                recipesCountTotal);
        }