« DataSetをXMLで書き出す時の注意点 | トップページ | C#で圧縮ファイルを生成する »

2006/12/16

ポストバックイベントを発生したコントロールを調べる

ASP.NET(VS2003)でアプリケーションを開発しているときに、ポストバック(PostBack)イベントを発生させたコントロールを調べる方法。ボタンコントロールだとClickイベントやCommandイベントでハンドリングしやすいですが、ドロップダウンリストだとSelectedIndexChangedイベントしかないので意図したタイミングでメソッドを呼べないことがあります。(設計が悪いんでしょうか・・・)
動的にコントロールを生成した場合も状況により、さっきまで存在したコントロールがなくなった場合などにイベントを呼んでくれないので、覚えておくと便利です。

 

private void Page_Load(object sender, System.EventArgs e)
{
  if(!this.IsPostBack)
  {
    ~何らかの初期化処理~
  }
  else
  {
    foreach(string key in Request.Form.AllKeys)
    {
      if(key.Equals("__EVENTTARGET"))
      {
        if(Request.Form[key].Equals("補足したいコントロールのID"))
        {
          ~何らかの処理から
        }
      }
    }
  }
}

« DataSetをXMLで書き出す時の注意点 | トップページ | C#で圧縮ファイルを生成する »

03 web」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: ポストバックイベントを発生したコントロールを調べる:

« DataSetをXMLで書き出す時の注意点 | トップページ | C#で圧縮ファイルを生成する »

2022年7月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

最近のトラックバック

無料ブログはココログ