XtraWizard 控件提供了 WizardControl.SelectedPageChanging 事件,此事件允许实现按条件 (非线性) 导航。 要执行此任务,则应接管当一个新向导页面正要被选中时发生的 WizardControl.SelectedPageChanging 事件。

在默认情况下,当最终用户单击 下一步(Next)后退(Back) 按钮时,XtraWizrad 控件会选择 WizardControl.Pages 集合中的下一个或前一个页面。 通过事件参数的 WizardPageChangingEventArgs.Page 属性返回新页面。 通过 WizardPageChangedEventArgs.PrevPage 属性返回之前的活动页面。 要获取用户导航的方向,则使用 WizardPageChangedEventArgs.Direction 属性。

如果不想要默认的行为,而想选择一个特定的页面,则只需要把此页面指派到 WizardPageChangingEventArgs.Page 属性。

C#CopyCode image复制代码
private void wizardControl1_SelectedPageChanging(object sender,
DevExpress.XtraWizard.WizardPageChangingEventArgs e) {
    // ...

    if(e.PrevPage == wpQuestion && e.Direction == Direction.Forward) 
        if(ceYesAnswer.Checked) e.Page = wpProgress;

    if(e.PrevPage == wpProgress && e.Direction == Direction.Backward)
        e.Page = wpQuestion;

    // ...
}
Note注意

可以在与 XtraWizard 套件一起提供的 WizardTourDemo 演示中找到完整的代码。