PowerArgs.Cli.ConsolePageApp.PageStack_PropertyChanged C# (CSharp) Method

PageStack_PropertyChanged() private method

private PageStack_PropertyChanged ( object sender, System e ) : void
sender object
e System
return void
        private void PageStack_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            if(e.PropertyName == nameof(PageStack.CurrentPage))
            {
                var currentPage = LayoutRoot.Controls.Where(c => c is Page).FirstOrDefault() as Page;

                if(currentPage != null)
                {
                    currentPage.Unload();
                }

                LayoutRoot.Controls.Clear();
                LayoutRoot.Controls.Add(PageStack.CurrentPage);
                PageStack.CurrentPage.Width = LayoutRoot.Width;
                PageStack.CurrentPage.Height = LayoutRoot.Height;
                PageStack.CurrentPage.Load();
                Paint();
            }
        }