/// <summary>
        /// Opens the page to select the date or time value
        /// </summary>
        private void OpenPickerPage(DateTimePickerType type)
        {
            string pickerPageName = type == DateTimePickerType.Date ? "DatePickerPage.xaml" : "TimePickerPage.xaml";

            Uri pickerPageUri = new System.Uri("/Microsoft.Phone.Controls.Toolkit;component/DateTimePickers/" +
                                               pickerPageName + "?dummy=" + Guid.NewGuid().ToString(), UriKind.Relative);

            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
                    UIElement 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;
                    _frame.NavigationStopped += OnFrameNavigationStoppedOrFailed;
                    _frame.NavigationFailed  += OnFrameNavigationStoppedOrFailed;

                    _frame.Navigate(pickerPageUri);
                }
            }
        }
 /// <summary>
 /// Shows Audio Recording application
 /// </summary>
 public void Show(DateTimePickerType type)
 {
     Deployment.Current.Dispatcher.BeginInvoke(() =>
     {
         OpenPickerPage(type);
     });
 }
 /// <summary>
 /// Shows DateTimePicker application
 /// </summary>
 public void Show(DateTimePickerType type)
 {
     Deployment.Current.Dispatcher.BeginInvoke(() =>
     {
         OpenPickerPage(type);
     });
 }
Example #4
0
        private void OpenPickerPage(DateTimePickerType type)
        {
            var page = type == DateTimePickerType.Date
                           ? "/Microsoft.Phone.Controls.Toolkit;component/DateTimePickers/DatePickerPage.xaml?dummy="
                           : "/Coding4Fun.Toolkit.Controls;component/ValuePicker/TimeSpanPicker/TimespanPickerPage.xaml?dummy=";

            page += Guid.NewGuid();

            var pickerPageUri = new Uri(page, UriKind.Relative);

            if (_frame != null)
            {
                return;
            }
            _frame = Application.Current.RootVisual as PhoneApplicationFrame;

            if (_frame == null)
            {
                return;
            }

            _frameContentWhenOpened = _frame.Content;

            var uiElement = _frameContentWhenOpened as UIElement;

            if (null != uiElement)
            {
                _savedNavigationInTransition = TransitionService.GetNavigationInTransition(uiElement);
                TransitionService.SetNavigationInTransition(uiElement, null);
                _savedNavigationOutTransition = TransitionService.GetNavigationOutTransition(uiElement);
                TransitionService.SetNavigationOutTransition(uiElement, null);
            }

            if (type == DateTimePickerType.Date)
            {
                _frame.Navigated += OnDateFrameNavigated;
            }
            else
            {
                _frame.Navigated += OnTimeFrameNavigated;
            }
            _frame.NavigationStopped += OnFrameNavigationStoppedOrFailed;
            _frame.NavigationFailed  += OnFrameNavigationStoppedOrFailed;

            _frame.Navigate(pickerPageUri);
        }
Example #5
0
        /// <summary>
        /// Base on DateTimePicker type, we use appropriate Validator.
        /// </summary>
        private Type GetValidatorTypeForPicker(DateTimePickerType pickerType)
        {
            switch (pickerType)
            {
            case DateTimePickerType.DatePicker:
                return(typeof(DateValidator));

            case DateTimePickerType.TimePicker:
                return(typeof(TimeValidator));

            case DateTimePickerType.DateTimePicker:
                return(typeof(DateTimeValidator));

            default:
                return(null);
            }
        }
        private void OpenPickerPage(DateTimePickerType type)
        {
            var page = type == DateTimePickerType.Date
                           ? "/Microsoft.Phone.Controls.Toolkit;component/DateTimePickers/DatePickerPage.xaml?dummy="
                           : "/Coding4Fun.Toolkit.Controls;component/ValuePicker/TimeSpanPicker/TimespanPickerPage.xaml?dummy=";

            page += Guid.NewGuid();

            var pickerPageUri = new Uri(page, UriKind.Relative);

            if (_frame != null) return;
            _frame = Application.Current.RootVisual as PhoneApplicationFrame;

            if (_frame == null) return;

            _frameContentWhenOpened = _frame.Content;

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

            if (type == DateTimePickerType.Date)
            {
                _frame.Navigated += OnDateFrameNavigated;
            }
            else
            {
                _frame.Navigated += OnTimeFrameNavigated;
            }
            _frame.NavigationStopped += OnFrameNavigationStoppedOrFailed;
            _frame.NavigationFailed += OnFrameNavigationStoppedOrFailed;

            _frame.Navigate(pickerPageUri);
        }
        /// <summary>
        /// Opens the page to select the date or time value
        /// </summary>
        private void OpenPickerPage(DateTimePickerType type)
        {
            string pickerPageName = type == DateTimePickerType.Date ? "DatePickerPage.xaml" : "TimePickerPage.xaml";

            Uri pickerPageUri = new System.Uri("/Microsoft.Phone.Controls.Toolkit;component/DateTimePickers/" +
                pickerPageName + "?dummy=" + Guid.NewGuid().ToString(), UriKind.Relative);

            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
                    UIElement 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;
                    _frame.NavigationStopped += OnFrameNavigationStoppedOrFailed;
                    _frame.NavigationFailed += OnFrameNavigationStoppedOrFailed;

                    _frame.Navigate(pickerPageUri);
                }
            }
        }
Example #8
0
 /// <summary>
 /// 初始化
 /// </summary>
 /// <param name="Data"></param>
 /// <param name="Mode"></param>
 public DatetimeAction(string Data, DateTimePickerType Mode) : this(Data)
 {
     mode = Mode;
 }
 public DateTimePickerElement PickerType(DateTimePickerType value)
 {
     _dateTimePickerType = value;
     return(this);
 }