ASP.NET~UpdatePanel??~

こんにちは、EGの尾里です。

今回は、私が入社後の実務の中で序盤にぶつかったASP.NETのコントロール「UpdatePanel」について必死で調べたことをアウトプットしていきたいと思います!





UpdatePanelって?

UpdatePanelとは画面の一部分のレンダリング(何かしらのデータをもとに表示内容を作る)を可能にするコントロールです。

具体的には。。。

下記のような商品は3,000円、代金引換時の手数料が500円の合計金額3,500円の商品購入画面があったとします。ここで決済方法をクレジットカード(手数料200円)に変更すると、合計金額の再計算が必要になります。本来は画面全体が再レンダリングされるので、氏名などの情報を保持し、金額を集計し、再描画という流れになります。UpdatePanelを使うと合計金額部分だけ再計算して再描画という処理が可能になります。

どう使う?

ざざざっと抜粋して記載してみました。

まずScriptManagerコントロールは必須です。これがないとUpdatePanelが使えないため必ず記載します。ContentTemplate内に非同期ポストバックつまり部分的に再描画したいコントロールを、AsyncPostbackTriggerに非同期ポストバックを起こさせるイベントを入れることで決済方法を変更時に合計金額部分だけレンダリングすることができます。

プログラム内で意図的にUpdatePanelを動かす(レンダリングする)こともできます。UpdatePanelコントロールのID.Update()→(例)UpdatePanel1.Update()とすることで可能です。

補足

UpdatePanelコントロールのプロパティUpdateModelにConditionを設定していますが、これはUpdatePanelが複数あった場合に連動して1つ目が発生したら2つ目、3つ目、、も発生させるかどうかの設定です。デフォルトはAlways(連動)のため、発生させたくない場合はConditionとしましょう。

おわりに

いかがでしたでしょうか。毎日開発を行っていてもどんどん新しい壁にぶつかり、UpdatePanelに限らず、なにこれ?がどんどん出てきます。日々勉強ですね。。今後も躓いたものに関してアウトプットしていけたらと思います。

関連記事

プロジェクトストーリー

おすすめ記事

技術

コメント

この記事へのコメントはありません。

カテゴリー

TOP
TOP