- - PR -
GridViewの自動DataBindのタイミングについて
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-06-25 09:12
どっとねっとふぁんさん、ご回答ありがとうございます。
>そういったことはまったく行っておらず、常に検索ボタンをクリックしている、 >ということでよいでしょうか? はい。常に検索ボタンをクリックしています。 >検索条件のコントロールの内容が、4のSelectが発生するページだけ >毎回設定されている >(毎回変更されていると認識されている)ということはありませんか? 「毎回変更されている」というのはどの様に調べれば分かりますでしょうか? コントロールをSelectParametersにデザイン時に設定していますが、 どのタイミングで設定されているのでしょうか? またまた質問になってしまいましたが、宜しくお願い致します。 |
|
投稿日時: 2008-06-25 11:00
> コントロールをSelectParametersにデザイン時に設定していますが、
> どのタイミングで設定されているのでしょうか? このコントロールの値は検索ボタンクリック時に変わることはありませんか? また、ポストバックのタイミングでコントロールを作り直したりしていて、新に値が設定されたかのようになっていることはありませんか? そのあたりが気になるということです。 |
|
投稿日時: 2008-06-25 11:53
どっとねっとふぁんさん、ご回答ありがとうございます。
>ポストバックのタイミングでコントロールを作り直したりしていて、 >新に値が設定されたかのようになっていることはありませんか? 原因が分かりました! PageLoad時、ある条件の時、GridViewの列を非表示にしていました。 試しにこれをコメントアウトしたら、4のイベントは起きませんでした。 しかし、これをどこのイベントに入れるべきか迷っています。 GridView.Columns(列番号).Visible = False としているのですが、 GridViewのLoadイベントでも変わりませんでした。 また、DataBoundイベントで行うと、今度はタイミングが変わって 最初の検索イベントで二回流れてしまいました。 どのイベントで行うべきかご教授願います。 宜しくお願い致します。 |
|
投稿日時: 2008-06-25 12:39
うまくいくかどうかわかりませんが、GridViewのPreRenderあたりでやってみるとどうなります?
|
|
投稿日時: 2008-06-25 12:50
GridViewのPreRenderで行った所、やはり二回流れてしまいました。
自分でBindするべきなんでしょうか? 宜しくお願い致します。 |
|
投稿日時: 2008-06-27 11:22
解決いたしました。
GridViewのInitイベントで記述する事で一回のSelectになりました。 PageLoad前にObjectDataSourceのイベントが発生(ProcessPostDataイベントで実行) していましたので、その前に行う事で解決しました。 どっとねっとふぁんさん、色々お付き合い頂きありがとうございました。 |