0

そのため、現在、とがあるC# ASPページで作業しています。イベントで GridView と DropDownList の両方を (接続されたデータ ソースと共に) 初期化しています。DropDownListGridViewPageLoad

DropDownList を に設定しましたAutoPostback=trueDropDownList_SelectedIndexChangedイベントで GridView の select ステートメントを変更しています。最終的な結果として、ページが再度読み込まれ、select ステートメントが変更されます。その時点で、GridView は既に再度読み込まれています。これは基本的に、GridView の変更が更新されるのに 2 回のページ更新が必要であることを意味します。

ページを 2 回更新する必要がないようにする方法はありますか? 代わりに、Page_LoadComplete 関数で DataSource と GridView を単純に更新しようとしましたが、その時点では、今回はページを更新するには遅すぎました。つまり、もう一度更新する必要がありました。

4

1 に答える 1

0

したがって、ページの読み込みでこれを試すことができます....

    if(!IsPostBack)
    {
      // only then bind your grid View...
    }

そして、DDLのselectedindex changedイベントで、バインドしたい選択結果セットにグリッドをバインドします...

これが行うことは、グリッド ビュー バインド コードがページ読み込みイベントで初めて実行されることです...そして、ドロップダウンで発生する可能性のある後続のポストバックで...選択したインデックスでグリッドビューをバインドできます変更されたイベント...これにより、グリッドビューが2回バインドされるのを回避できます...

于 2012-05-30T16:58:20.777 に答える