private void ChangeSetupPage(FrameworkElement in_new_page, ExpansionBase in_main_class) { FrameworkElement old_page; // get old page if (gSetupFormContainer.Content != null) { old_page = (FrameworkElement)gSetupFormContainer.Content; } else { old_page = null; } // do nothing if the same page is selected if (old_page != null && in_new_page != null && old_page.GetType() == in_new_page.GetType()) { return; } gSetupFormContainer.Content = null; // event arg SetupPageBase.SetupPageEventArgs event_args = new SetupPageBase.SetupPageEventArgs(); event_args.NewPage = in_new_page; event_args.OldPage = old_page; event_args.MainClass = in_main_class; // call changed event handler of the old page if (old_page is SetupPageBase) { ((SetupPageBase)old_page).OnSetupPageDeactivating(this, event_args); } // add new page to the container if (in_new_page != null) { gSetupFormContainer.Content = in_new_page; if (in_new_page is SetupPageBase) { ((SetupPageBase)in_new_page).OnSetupPageActivating(this, event_args); } } }
private void ChangeSetupPage(FrameworkElement in_new_page) { FrameworkElement old_page; // get old page if (gSetupFormContainer.Children.Count > 0) { old_page = (FrameworkElement)gSetupFormContainer.Children[0]; } else { old_page = null; } // do nothing if the same page is selected if (old_page != null && in_new_page != null && old_page.GetType() == in_new_page.GetType()) { return; } gSetupFormContainer.Children.Clear(); // event arg SetupPageBase.SetupPageEventArgs event_args = new SetupPageBase.SetupPageEventArgs(); event_args.NewPage = in_new_page; event_args.OldPage = old_page; // call changed event handler of the old page if (old_page is SetupPageBase) { ((SetupPageBase)old_page).OnSetupPageDeactivating(this, event_args); } // add new page to the container if (in_new_page != null) { gSetupFormContainer.Children.Add(in_new_page); if (in_new_page is SetupPageBase) { ((SetupPageBase)in_new_page).OnSetupPageActivating(this, event_args); } } }