动态添加页面到WPF向导

本文关键字:WPF 向导 添加 动态 | 更新日期: 2023-09-27 18:05:34

我使用本文http://www.codeproject.com/KB/WPF/InternationalizedWizard.aspx创建了一个WPF向导来处理我的一个用户故事。

我现在面临的问题是,在向导页面的某个点上,用户做出了一个选择,决定了要显示的下一个窗口,我不知道如何处理这种情况

动态添加页面到WPF向导

您可以更改MoveToNextPage函数中的逻辑来处理您的特殊情况。但是,如果你这样做,我建议将该逻辑移到另一个函数中,该函数根据当前状态决定下一页。

同样,简单的基于索引的解决方案可能不会很好地工作,一旦你有一个完美的线性流。为了解决这个问题,您可以在Page结构中添加某种Next引用,并在适当的页面上保留特殊逻辑以忽略Next。此解决方案与迭代链表相同,然后在特殊情况下跳到另一个列表(该列表反馈到相同的列表)。

如果你想要"完美的设计",你可以想出一个不那么线性的系统来选择页面(例如状态机)。不过我还是让你自己决定吧。

如果你必须太花哨,那么你可能想要考虑一个不是向导的设计。向导是用于线性流程的,如果您的流程不是线性的,向导将不适合您的模型。