动态添加页面到WPF向导

时间:2011-08-11 20:54:30

标签: c# .net wpf

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

我现在面临的问题是,在向导页面的某个时刻,用户做出了一个选择,它决定了下一个要显示的窗口,我无法弄清楚如何处理这种情况。

1 个答案:

答案 0 :(得分:2)

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

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

如果你想在其上进行“完美设计”,你可以想出一个不太线性的系统来选择页面(例如状态机)。不过,我会把它留给你。

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