- PR -

ASP.Net DataGrid ページングについて

1
投稿者投稿内容
PiKaPiKa
会議室デビュー日: 2005/09/05
投稿数: 19
投稿日時: 2005-09-27 11:12
いつもお世話になっております。
他のスレッド見て解決しようとしているのですが上手く行かない為、質問させていただきます。(ASP.Net 2003 XPpro)

作ろうとしているのは検索結果でして、5件ずつ表示させたいです。

コードとしては

--------Page_Load------------------------------------------
検索の為にSQL文作成
SqlDataAdapter1.SelectCommand.CommandText = SQL文

SqlDataAdapter1.Fill(SearchDX_DataSet1.viewShougaiKANZEN)
DataGrid1.DataBind()
-----------------------------------------------------------

--------DataGrid1_PageIndexChanged-------------------------
DataGrid1.CurrentPageIndex = e.NewPageIndex
DataGrid1.DataBind()
-----------------------------------------------------------

実行すると「CurrentPageIndex 値が無効です。 値は 0 以上で PageCount より小さくなければなりません。」とエラーになりDataGrid1_PageIndexChangedのDataGrid1.DataBind()が赤くなります。
この部分を消すとエラーにはならないのですが、1ページ目と同じ結果の件数が減ったモノが表示されます。

アドバイスお願いします。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-09-27 11:22
こんにちは、じゃんぬ です。

引用:

PiKaPiKaさんの書き込み (2005-09-27 11:12) より:

実行すると「CurrentPageIndex 値が無効です。
値は 0 以上で PageCount より小さくなければなりません。」とエラーになり


デバッグしていますか?
e.NewPageIndex の値くらいは確認してますよね?


_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
PiKaPiKa
会議室デビュー日: 2005/09/05
投稿数: 19
投稿日時: 2005-09-27 13:00
解決しましたので、報告します。
IsPostのIf文のせいでした。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-09-27 21:12
もうちょっと、他の人にもわかるように書いて欲しいなぁ。。。

引用:

PiKaPiKaさんの書き込み(2005-09-27 11:12)より:

コードとしては

--------Page_Load------------------------------------------
検索の為にSQL文作成
SqlDataAdapter1.SelectCommand.CommandText = SQL文

SqlDataAdapter1.Fill(SearchDX_DataSet1.viewShougaiKANZEN)
DataGrid1.DataBind()
-----------------------------------------------------------

--------DataGrid1_PageIndexChanged-------------------------
DataGrid1.CurrentPageIndex = e.NewPageIndex
DataGrid1.DataBind()
-----------------------------------------------------------


引用:

PiKaPiKaさんの書き込み(2005-09-27 13:00)より:

解決しましたので、報告します。
IsPostのIf文のせいでした。


 上のコードには if 文はないし、IsPost というプロパティなどもないです。したがって、ASP.NET に初めて携わる人が見ても、わからないと思いますが、どうですか?

 どこかに

If IsPostBack Then
 なにかの処理
End If

が入っていて、これが何かしら、悪かったのでしょうね。

 ただ、修正方法が間違っている可能性が、少なからずあるような気がするのですけど?


_________________
検索のコツ質問のコツ

_____
誤字修正(__;

[ メッセージ編集済み 編集者: Jitta 編集日時 2005-09-27 21:35 ]
1

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