1

UpdatePanelScriptManagerのメソッドを使用してAddHistoryPoint、ページの状態をブラウザの履歴に保存しています。このページは、次の 2 つの状態を持つ単純な検索/結果ページです。

  • 状態 1 - 検索フィルターの表示
  • 状態 2 - 検索結果の表示

(ブラウザの [戻る] ボタンをクリックして) ページに戻ると、ページには初期状態 (状態 1) が表示されますが、更新パネルがポスト バックし、ページが検索結果に切り替わります (状態 2)。

これは乱雑に見え、私の実装で何かが欠けているように感じます。保存された状態をロードするか、保存された状態がロードされるまでページのコンテンツを非表示にするようにページに指示するにはどうすればよいですか?

4

1 に答える 1

0

ScriptManagerイベントOnNavigateHistoryで知っているように、状態1と2の同じキーIDにHistoryPointを追加する例を処理する必要がありますが、値が異なるだけで、e.State ["YourKey"]に基づいてOnNavigateHistoryを決定します。例

string indexString = e.State["YourKey"]; 
    if (String.IsNullOrEmpty(indexString)) { 
         SetToStateOne();
    }
    else { 
        int index = int.Parse(indexString); 
        SetToStateTwo();
    }

私の悪い英語でごめんなさい

于 2010-07-28T19:40:14.910 に答える