private void ContinueHandler(object sender, ExecutedRoutedEventArgs args)
        {
            bool isValid = ValidateActiveStep();

            if (BlockNavigationOnValidationErrors && !isValid)
            {
                RaiseNavigationCanceledByValidation();

                return;
            }

            StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(ContinueNavigationEvent, this, Controller.ActiveStep, Controller.NextStep, false);

            RaiseEvent(navigationArgs);

            if (ContinueNavigationCommand != null && ContinueNavigationCommand.CanExecute(navigationArgs))
            {
                ContinueNavigationCommand.Execute(navigationArgs);
            }

            if (!navigationArgs.Cancel)
            {
                Controller.Continue();
            }
        }
        private void BackHandler(object sender, ExecutedRoutedEventArgs args)
        {
            bool isValid = ValidateActiveStep();

            if (BlockNavigationOnValidationErrors && !isValid)
            {
                RaiseNavigationCanceledByValidation();

                return;
            }

            StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(BackNavigationEvent, this, m_controller.ActiveStep, m_controller.PreviousStep, false);

            RaiseEvent(navigationArgs);

            if (BackNavigationCommand != null && BackNavigationCommand.CanExecute(navigationArgs))
            {
                BackNavigationCommand.Execute(navigationArgs);
            }

            if (!navigationArgs.Cancel)
            {
                m_controller.Back();
            }
        }
        private void SelectStep(IStep step)
        {
            if (step != null && step != m_controller.ActiveStep && !IsLinear)
            {
                bool isValid = ValidateActiveStep();

                if (BlockNavigationOnValidationErrors && !isValid)
                {
                    RaiseNavigationCanceledByValidation();

                    return;
                }

                StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(StepNavigationEvent, this, m_controller.ActiveStep, step, false);
                RaiseEvent(navigationArgs);

                if (StepNavigationCommand != null && StepNavigationCommand.CanExecute(navigationArgs))
                {
                    StepNavigationCommand.Execute(navigationArgs);
                }

                if (!navigationArgs.Cancel)
                {
                    m_controller.GotoStep(step);
                }
                else
                {
                    // refresh the property with the old state
                    ActiveStep = m_controller.ActiveStep;
                }
            }
        }
示例#4
0
        private void StepSelectedHandler(object sender, ExecutedRoutedEventArgs args)
        {
            if (!IsLinear)
            {
                bool isValid = ValidateActiveStep();

                if (BlockNavigationOnValidationErrors && !isValid)
                {
                    RaiseNavigationCanceledByValidation();

                    return;
                }

                StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(StepNavigationEvent, this, m_controller.ActiveStep, ((StepperStepViewModel)args.Parameter).Step, false);
                RaiseEvent(navigationArgs);

                if (StepNavigationCommand != null && StepNavigationCommand.CanExecute(navigationArgs))
                {
                    StepNavigationCommand.Execute(navigationArgs);
                }

                if (!navigationArgs.Cancel)
                {
                    m_controller.GotoStep((StepperStepViewModel)args.Parameter);
                }
            }
        }
示例#5
0
        private void ContinueHandler(object sender, ExecutedRoutedEventArgs args)
        {
            StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(ContinueNavigationEvent, this, Controller.ActiveStep, Controller.NextStep, false);

            RaiseEvent(navigationArgs);

            if (ContinueNavigationCommand != null && ContinueNavigationCommand.CanExecute(navigationArgs))
            {
                ContinueNavigationCommand.Execute(navigationArgs);
            }

            if (!navigationArgs.Cancel)
            {
                Controller.Continue();
            }
        }
示例#6
0
        private void CancelHandler(object sender, ExecutedRoutedEventArgs args)
        {
            if (args.Handled)
            {
                return;
            }

            StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(CancelNavigationEvent, this, Controller.ActiveStep, null, false);

            RaiseEvent(navigationArgs);

            if (CancelNavigationCommand != null && CancelNavigationCommand.CanExecute(navigationArgs))
            {
                CancelNavigationCommand.Execute(navigationArgs);
            }
        }
示例#7
0
        private void BackHandler(object sender, ExecutedRoutedEventArgs args)
        {
            StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(BackNavigationEvent, this, Controller.ActiveStep, Controller.PreviousStep, false);

            RaiseEvent(navigationArgs);

            if (BackNavigationCommand != null && BackNavigationCommand.CanExecute(navigationArgs))
            {
                BackNavigationCommand.Execute(navigationArgs);
            }

            if (!navigationArgs.Cancel)
            {
                Controller.Back();
            }
        }
示例#8
0
        private void StepSelectedHandler(object sender, ExecutedRoutedEventArgs args)
        {
            if (!IsLinear)
            {
                StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(StepNavigationEvent, this, Controller.ActiveStep, ((StepperStepViewModel)args.Parameter).Step, false);
                RaiseEvent(navigationArgs);

                if (StepNavigationCommand != null && StepNavigationCommand.CanExecute(navigationArgs))
                {
                    StepNavigationCommand.Execute(navigationArgs);
                }

                if (!navigationArgs.Cancel)
                {
                    Controller.GotoStep((StepperStepViewModel)args.Parameter);
                }
            }
        }
示例#9
0
        private void StepSelectedHandler(StepperStepViewModel stepperStepViewModel)
        {
            if (!IsLinear)
            {
                StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(StepNavigationEvent, this, Controller.ActiveStep, stepperStepViewModel.Step, false);
                RaiseEvent(navigationArgs);

                if (StepNavigationCommand != null && StepNavigationCommand.CanExecute(navigationArgs))
                {
                    StepNavigationCommand.Execute(navigationArgs);
                }

                if (!navigationArgs.Cancel)
                {
                    Controller.GotoStep(stepperStepViewModel);
                }
            }
        }
示例#10
0
        private void SelectStep(IStep step)
        {
            if (step != null && step != Controller.ActiveStep && !IsLinear)
            {
                bool isValid = ValidateActiveStep();

                StepperStepViewModel activeStepViewModel = Controller.ActiveStepViewModel;
                StepperStepViewModel nextStepViewModel   = Controller.InternalSteps.FirstOrDefault(stepViewModel => stepViewModel.Step == step);

                if (BlockNavigationOnValidationErrors && !isValid &&
                    (nextStepViewModel == null || nextStepViewModel.Number > activeStepViewModel.Number))
                {
                    RaiseNavigationCanceledByValidation();

                    return;
                }

                StepperNavigationEventArgs navigationArgs = new StepperNavigationEventArgs(StepNavigationEvent, this, Controller.ActiveStep, step, false);
                RaiseEvent(navigationArgs);

                if (StepNavigationCommand != null && StepNavigationCommand.CanExecute(navigationArgs))
                {
                    StepNavigationCommand.Execute(navigationArgs);
                }

                if (!navigationArgs.Cancel)
                {
                    Controller.GotoStep(step);
                }
                else
                {
                    // refresh the property with the old state
                    ActiveStep = Controller.ActiveStep;
                }
            }
        }