- PR -

ADOのMoveNextをADO.NETで実現するには?

1
投稿者投稿内容
DT
常連さん
会議室デビュー日: 2003/05/06
投稿数: 31
投稿日時: 2003-12-02 09:58
毎度お世話になっております。

VB.NETでWindows Formアプリを作成中ですが、
ADOでよく使われていたMoveNext(MovePrevious)と同等の機能を
ADO.NETで実現するにはどの様な手法がありますでしょうか?

SQL-Server2000のテーブルを読み取り、レコードが複数件存在する場合、
移動ボタン(最初へ,前へ,次へ,最後へ…といった感じ)を表示し、
ユーザーにボタン操作を行わせフォーム上には1件ずつレコード表示させる…
といった内容です。

どなたかご指導お願い申し上げます。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-12-02 10:30
 データをどのようにして取ってきていますか?DataTableに放り込んでいるなら、MoveNextとかをしなくても、すでにそこにあります。Rowsプロパティでアクセスしてください。

 で、Windowsアプリでしょうか、Webアプリでしょうか?それによって違ってきます。基本的に、どちらのコントロールもDataBindingができるので、DataSourceやDataMemberを設定してやればいいのです。後はレコード番号の設定の仕方。
小野@どっとねっとふぁん
ぬし
会議室デビュー日: 2001/10/30
投稿数: 402
投稿日時: 2003-12-02 10:31
http://www.gotdotnet.com/japan/student/column/moredotnet/moredotnet5.aspx

ここで、データフォームウィザードの利用例をだしてますが、
「すべてのレコードをグリッドで表示」
の代わりに
「単一レコードをコントロールで表示」
を選択すると、フォーム上に1件ずつデータを表示する
サンプルを作成することができます。

後はそのサンプルのプログラムを解析してみるのがよいかと。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2003-12-02 10:37
DTさん、お早うございます。

引用:

ADOでよく使われていたMoveNext(MovePrevious)と同等の機能を
ADO.NETで実現するにはどの様な手法がありますでしょうか?


とりあえず、「.NET Framework 開発者ガイド」-「ADO.NET を使用したデータのアクセス」、あるいは「Visual Basic および Visual C# の概念」-「データへのアクセス」あたりの文書に目を通してみて下さい。

で、System.Data.DataTable にデータを読み込む事ができたら、
DataTable.Rows(n)
という形で取得したい行を指定出来ます。
Os_
ベテラン
会議室デビュー日: 2003/04/16
投稿数: 77
投稿日時: 2003-12-03 09:10
DTさんおはようございます。おさです。
問い合わせの内容確認ですが、
データの取得についてですか?、それとも取得したデータのカレント行の移動ですか?
もし後者であれば、Windows フォームの CurrencyManager を使うことで、
カレント行の操作が可能です。
具体的には、以下で確認して下さい。

http://support.microsoft.com/default.aspx?scid=kb;ja;311543

以上
DT
常連さん
会議室デビュー日: 2003/05/06
投稿数: 31
投稿日時: 2003-12-03 22:04
毎度お世話になります。

ご回答頂いた皆様、返事が遅くなってしまい大変申し訳ございません。
‘BindingContext’を使用してPositionの値を増減させる事で
何とか実現できました。
また、CurrencyManagerについても勉強してみます。
お忙しい所本当にご指導有難うございました。
1

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