- PR -

DataGridのページング機能

投稿者投稿内容
3m
常連さん
会議室デビュー日: 2004/11/05
投稿数: 34
投稿日時: 2004-12-03 16:26
こんにちは。
いつもお世話になっております。
WebMatrixにてASP.NET(VB)で開発をしております。

DataGridのページングについて教えていただきたいのですが
DataGridの内容はItemTemplateにて作成しています。
ページング機能を追加しようと
AllowPaging : true
PageSize : 10
を設定しました。
実装させてみると

AllowPagingがtrueに設定され、選択されたデータソースがICollectionを実装しない場合は、AllowCustomPagingがtrueに設定され、かつVirtualItemCountはID objGrdのDataGridに対して設定されなければなりません。

とのエラーになります。
ページング機能を使うにはどのようにすればいいのでしょうか?
エラー内容のICollection、VirtualItemCountなどmsdnにて調べたのですが
いまいちよくわかりませんでした。
どなたか教えていただけないでしょうか?
よろしくお願いします。
えんぞ@?
ぬし
会議室デビュー日: 2004/07/06
投稿数: 271
お住まい・勤務地: はまっこ
投稿日時: 2004-12-03 16:57
以下、参考にならないでしょうか。
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet09/aspnet09_03.html
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet11/aspnet11_01.html
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet11/aspnet11_03.html
todo
ぬし
会議室デビュー日: 2003/07/23
投稿数: 682
投稿日時: 2004-12-03 17:01
DataSourceに代入したものがページングに適していないのだと思います。
もしかしてExecuteReader?

DataTableなら大丈夫です。
3m
常連さん
会議室デビュー日: 2004/11/05
投稿数: 34
投稿日時: 2004-12-03 17:45
えんぞ@見習さん、todoさんありがとうございます。

http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet09/aspnet09_03.html
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet11/aspnet11_01.html
http://www.atmarkit.co.jp/fdotnet/aspnet/aspnet11/aspnet11_03.html

参考に読みました。

>DataSourceに代入したものがページングに適していないのだと思います。
>もしかしてExecuteReader?

ExecuteReader使ってます。
ページングに適していないのですか!?
それが原因ですね…。
勉強になりました。

>DataTableなら大丈夫です。
DataTableについて調べたのですが使い方がわかりません。
できれば教えていただきたいです。
よろしくお願いします。
とっと
大ベテラン
会議室デビュー日: 2004/03/25
投稿数: 197
投稿日時: 2004-12-03 18:03
こんにちは。

DataTableの使い方が分からないから使い方を教えてくれって言うのはちょっと無茶かも・・

ある程度ご自分でやってみてどうしても上手くいかないところを絞って質問しないと・・。

ここのサイトの.NET Tipsをみてみましょう。
http://www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html
3m
常連さん
会議室デビュー日: 2004/11/05
投稿数: 34
投稿日時: 2004-12-03 18:23
とっとさんの仰るとおりですね。

一応作ってはみたのですが、どうもよくわからず…。
Sub BindData()
Dim objDb As New SqlConnection("server='(local)'; user id='sa'; password=''; database='abc'")
Dim dt As DataTable = New DataTable()
Dim objDa As SqlDataAdapter = New sqlDataAdapter("SELECT * FROM 情報 ORDER BY ID",objDb)
Dim objDs As New DataSet()
objDb.Open()
objGrd.DataSource = objDs.Tables("ID")
Page.DataBind()
objDb.Close()
End Sub

参考になるサイトが見つからなかったので自分で考えながら作ってみました。
たぶん全然違うと思います。
しかもエラーすら出ず動きません。

よろしくお願いします。
burton999
ぬし
会議室デビュー日: 2003/10/06
投稿数: 898
お住まい・勤務地: 東京
投稿日時: 2004-12-03 18:31
ここが参考になるかと
http://ja.gotdotnet.com/quickstart/winforms/doc/DataAccessPlaceHolder.aspx

とっと
大ベテラン
会議室デビュー日: 2004/03/25
投稿数: 197
投稿日時: 2004-12-03 18:39
こんにちは。

>一応作ってはみたのですが、どうもよくわからず…。

ってどこがどう分からないのですか?

 データベースからデータを取得してどのような段階を経てDataGridに表示されるか
ご存知ですか?そのどの段階のどの部分が分からないのか、あるいは全体の流れが
分からないのか?

>参考になるサイトが見つからなかったので

MSDNは調べましたか?

asp.net datagrid この2つのキーワードでこのページが出てきましたよ
[INFO] ASP.NET のデータ連結について
http://support.microsoft.com/default.aspx?scid=kb;ja;307860

全体的に分からないなら流れにそってWebアプリを作成するような書籍を買うのも手です。
僕は最初そうしました

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