私は 3 ステップのウィザードを持っています。最初のステップでは、リピーターを使用して、個人が選択できる一連のボタンを作成します。ユーザーがいずれかのボタンを選択すると、ボタンの値がセッション状態に保存されます。ユーザーは次のステップに進み、以前に選択したものに基づいた同様のボタンのリストが表示されます。したがって、「ハンバーガー」を選択すると、「オニオン」、「レタス」、「トマト」のオプションが表示され、「ホットドッグ」を選択すると、「ザワークラウト」と「ケチャップ」が表示される可能性があります。個人がハンバーガーを選んだとしましょう。これは次のようにセッション状態に保存されます。
Public Sub Button_ItemCommand(ByVal Sender As Object, ByVal e As RepeaterCommandEventArgs)
' ******** Lets pass on the results of our query in LinqDataSource1_Selecting.
Session("food_select") = RTrim(e.CommandName)
Wizard1.ActiveStepIndex = 1
End Sub
さて、これはうまく機能します。しかし、ハンバーガーを選んだとしたら、ホットドッグが本当に食べたいと思っていることに気づきます。ウィザードの最初のステップに戻り、ホットドッグ ボタンをクリックしますが、ウィザードが次のステップに進むと、まだハンバーガーのオプションが表示されます。セッション変数は更新されていません。なんで?ありがとう!