protected override void OnApplyTemplate() { if (Windows.ApplicationModel.DesignMode.DesignModeEnabled) { return; } VisualStateManager.GoToState(this, "ResetState", false); MasterPresenter = (ContentPresenter)GetTemplateChild("MasterFrame"); DetailPresenter = (Grid)GetTemplateChild("DetailPresenter"); AdaptivePanel = (MasterDetailPanel)GetTemplateChild("AdaptivePanel"); AdaptivePanel.ViewStateChanged += OnViewStateChanged; MasterPresenter.RegisterPropertyChangedCallback(VisibilityProperty, OnVisibilityChanged); var detailVisual = ElementCompositionPreview.GetElementVisual(DetailPresenter); detailVisual.Clip = Window.Current.Compositor.CreateInsetClip(); if (DetailFrame != null) { var parent = VisualTreeHelper.GetParent(DetailFrame) as UIElement; if (parent != null && parent != DetailPresenter) { VisualTreeHelper.DisconnectChildrenRecursive(parent); } //Grid.SetRow(DetailFrame, 1); try { DetailFrame.Navigated += OnNavigated; DetailPresenter.Children.Add(DetailFrame); if (DetailFrame.CurrentSourcePageType == null) { DetailFrame.Navigate(BlankPageType); } else { DetailFrame.BackStack.Insert(0, new PageStackEntry(BlankPageType, null, null)); } } catch { } } if (ActualWidth > 0) { UpdateVisualState(); if (CurrentState != MasterDetailState.Minimal && ViewStateChanged != null) { ViewStateChanged(this, EventArgs.Empty); } } }
protected override void OnApplyTemplate() { base.OnApplyTemplate(); headerPresenter = GetTemplateChild("headerPresenter") as ContentPresenter; if (headerPresenter != null) { headerPresenter.RegisterPropertyChangedCallback(ContentPresenter.ContentProperty, new DependencyPropertyChangedCallback(OnHeaderPresenterContentChanged)); } else { Debug.Assert(false, "headerpresenter is missing."); } }
protected override void OnApplyTemplate() { if (Windows.ApplicationModel.DesignMode.DesignModeEnabled) { return; } VisualStateManager.GoToState(this, "ResetState", false); MasterPresenter = (ContentPresenter)GetTemplateChild("MasterFrame"); DetailPresenter = (Grid)GetTemplateChild("DetailPresenter"); AdaptiveStates = (VisualStateGroup)GetTemplateChild("AdaptiveStates"); AdaptiveStates.CurrentStateChanged += OnCurrentStateChanged; MasterPresenter.RegisterPropertyChangedCallback(VisibilityProperty, OnVisibilityChanged); if (DetailFrame != null) { var parent = VisualTreeHelper.GetParent(DetailFrame) as UIElement; if (parent != null && parent != DetailPresenter) { VisualTreeHelper.DisconnectChildrenRecursive(parent); } DetailFrame.Navigated += OnNavigated; DetailPresenter.Children.Add(DetailFrame); if (DetailFrame.CurrentSourcePageType == null) { DetailFrame.Navigate(BlankPageType); } else { DetailFrame.BackStack.Insert(0, new PageStackEntry(BlankPageType, null, null)); } } if (ActualWidth > 0) { UpdateVisualState(); if (CurrentState != MasterDetailState.Narrow && ViewStateChanged != null) { ViewStateChanged(this, EventArgs.Empty); } } }