2011-08-11 7 views
0

私はこの記事を使用して:http://www.codeproject.com/KB/WPF/InternationalizedWizard.aspx私のユーザーストーリーの1つを処理するためのWPFウィザードを作成しました。ページを動的にWPFウィザードに追加する

私が直面している問題は、ウィザードのページのある時点で、表示される次のウィンドウを決定する選択肢があり、このケースの処理方法を理解できないということです。

答えて

2

MoveToNextPage関数のロジックを変更して、特殊なケースを処理することができます。しかし、これを行うと、そのロジックを現在の状態に基づいて次のページを決定する別の関数に移動することをお勧めします。

また、単純なインデックスベースのソリューションは、完全に線形のフロー以外のものがあれば、あまりうまく機能しません。これを修正するには、Page構造体への何らかの種類のNext参照を追加し、適切なページにあるときは特別なロジックのままにして、Nextを無視します。このソリューションは、リンクされたリストを反復し、特殊なケースで代替リスト(同じリストにフィードバックする)にスキップするのと同じです。

「完璧なデザイン」に移行したい場合は、ページを選択するためのシステムの線形性が低くなる可能性があります(ステートマシンなど)。私はあなたにそれを残すでしょう。

余裕がなければ、ウィザードではないデザインを検討することもできます。ウィザードは線形フロー用であり、フローが線形でない場合、ウィザードはモデルに適合しません。

関連する問題