- PR -

GridViewでの検索について

1
投稿者投稿内容
ござーる
会議室デビュー日: 2006/06/14
投稿数: 17
投稿日時: 2006-08-08 16:47
お世話になっています。
環境はVisualStudio2005です。

GridViewとSqlDataSourceを使用して検索画面を作成しています。
検索条件をいれるTextBoxがあり
検索ボタンを押すとその条件にしたがってデータを表示します。

他にもいくつかボタンがあり
データを保存したり、検索条件を追加表示、非表示したりします。
検索条件を変更しない場合は問題ないのですが、
変更した後、検索以外のボタンを押しても再度検索がはしります。
検索ボタンを押したときのみ再度検索にいくようにしたいのですが、
どうしたらよいかわからないで困っています。

どうぞ、よろしくお願いします。

べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2006-08-08 17:01
引用:
検索ボタンを押したときのみ再度検索にいくようにしたいのですが、

「検索ボタンを押したときのみ」SqlDataSourceを指定(してバインド)すればいいんじゃないですか?
ござーる
会議室デビュー日: 2006/06/14
投稿数: 17
投稿日時: 2006-08-08 19:03
返信ありがとうございます。

SQL文を作成するときにバインド変数(パラメータ)を使用し
バインド変数にセットする値は検索条件のTextBoxの値としています。
検索条件のTextBoxの値を変更して
何の処理も書いていないボタンを押すと
再度検索をしてしまいます。

上記のようにならないでしょうか?

よろしくお願いします。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-08-08 19:11
べるさんがおっしゃってる方法が回答だと思います。

現在の状態だと、ページが表示されるたびに必ずテキストボックス内の現在の検索条件が
チェックされ、内容が変わっていればバインドの処理が走るようになっていると思います。

GridViewのデータソースの設定をはずしてしまって、検索ボタンをクリックしたときに
GridViewのデータソースに作成済みのSqlDataSourceを設定し、GridViewのDataBindメソッドを
呼べばよいと思います。
ござーる
会議室デビュー日: 2006/06/14
投稿数: 17
投稿日時: 2006-08-08 20:06
上記の方法でできました。
理解が遅くてすみません。

べるさん、どっとねっとふぁんさんありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)