Beispiel #1
0
        public void Show()
        {
            if (_frame == null)
            {
                // Hook up to necessary events and navigate
                _frame = Application.Current.RootVisual as PhoneApplicationFrame;
                _frameContentWhenOpened = _frame.Content;

                var frameContentWhenOpenedAsUiElement = _frameContentWhenOpened as UIElement;
                if (null != frameContentWhenOpenedAsUiElement)
                {
                    _savedNavigationInTransition = TransitionService.GetNavigationInTransition(frameContentWhenOpenedAsUiElement);
                    TransitionService.SetNavigationInTransition(frameContentWhenOpenedAsUiElement, null);
                    _savedNavigationOutTransition = TransitionService.GetNavigationOutTransition(frameContentWhenOpenedAsUiElement);
                    TransitionService.SetNavigationOutTransition(frameContentWhenOpenedAsUiElement, null);
                }

                _frame.Navigated += HandleFrameNavigated;

                if (_frame.GetType() == typeof(PhoneApplicationFrame))
                {
                    _frame.NavigationStopped += HandleFrameNavigationStoppedOrFailed;
                }

                _frame.NavigationFailed += HandleFrameNavigationStoppedOrFailed;

                _frame.Navigate(_pageUri);
            }
        }
Beispiel #2
0
        public void OpenPicker()
        {
            if (null == PickerPageUri)
            {
                throw new ArgumentException("PickerPageUri property must not be null.");
            }

            if (null == _frame)
            {
                // Hook up to necessary events and navigate
                _frame = Application.Current.RootVisual as PhoneApplicationFrame;

                if (null != _frame)
                {
                    _frameContentWhenOpened = _frame.Content;

                    // Save and clear host page transitions for the upcoming "popup" navigation
                    var frameContentWhenOpenedAsUiElement = _frameContentWhenOpened as UIElement;

                    if (null != frameContentWhenOpenedAsUiElement)
                    {
                        _savedNavigationInTransition = TransitionService.GetNavigationInTransition(frameContentWhenOpenedAsUiElement);
                        TransitionService.SetNavigationInTransition(frameContentWhenOpenedAsUiElement, null);

                        _savedNavigationOutTransition = TransitionService.GetNavigationOutTransition(frameContentWhenOpenedAsUiElement);
                        TransitionService.SetNavigationOutTransition(frameContentWhenOpenedAsUiElement, null);
                    }

                    _frame.Navigated += OnFrameNavigated;

                    if (_frame.GetType() == typeof(PhoneApplicationFrame))
                    {
                        _frame.NavigationStopped += OnFrameNavigationStoppedOrFailed;
                    }

                    _frame.NavigationFailed += OnFrameNavigationStoppedOrFailed;

                    _frame.Navigate(PickerPageUri);
                }
            }
        }