C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[4]: VB.NETで別クラスからDataTable読出し


(過去ログ 156 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■90764 / inTopicNo.1)  VB.NETで別クラスからDataTable読出し
  
□投稿者/ TanuTanu (25回)-(2019/04/18(Thu) 13:15:35)

分類:[VB.NET/VB2005 以降] 

お世話になります。
データセットのテーブルにCSVデータ取り込み、外部クラスから読出しが出来ません。
ご教授の程、宜しくお願いいたします。

Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
      
       ・・・

While (Not parser1.EndOfData)
Dim row As String() = parser1.ReadFields()
Dataset1.Table1.Rows.Add(row)
End While

Debug.WriteLine(Dataset1.Table1.Rows("1").Item("Code")) ’・・・これは読出し出来ました。

END SUB
End Class

Public Class データ読出し
Dim Dataset1_DS As New Dataset1
Public Sub Check()
Debug.WriteLine(Dataset1_DS.Tables(0).Rows.Count) ’・・・これが0になります。
  Debug.WriteLine(Dataset1_DS.Tables(0).Rows(10).Item("Code"))’・・・空っぽなのでエラー
END SUB
End Class


使用環境:VS2017、WIN7
質問者:素人


引用返信 編集キー/
■90766 / inTopicNo.2)  Re[1]: VB.NETで別クラスからDataTable読出し
□投稿者/ WebSurfer (1806回)-(2019/04/18(Thu) 14:21:45)
No90764 (TanuTanu さん) に返信

> データセットのテーブルにCSVデータ取り込み、外部クラスから読出しが出来ません。

Form1 で生成した DataSet への参照を「データ読出し」クラスに渡したいなら、「データ読出し」クラスに
DataSet への参照を引数として渡せるコンストラクタを追加定義して、「データ読出し」クラスをそのコンス
トラクタで初期化する際に渡してはいかが?

上記ではやりたいことができないな場合は、どこがどうやりたいことと違うか詳しく説明してください。
引用返信 編集キー/
■90768 / inTopicNo.3)  Re[2]: VB.NETで別クラスからDataTable読出し
□投稿者/ TanuTanu (26回)-(2019/04/18(Thu) 18:30:00)
WebSurfer さん

ありがとうございます。

返信頂いた内容は理解しましたが、「DataSet への参照を引数として渡せるコンストラクタを追加定義」とはそれようのクラス
が別途必要って事ですか?

初心者なのでどう書いたらいいのか解りません。

ご教授の程、宜しくお願いいたします。

引用返信 編集キー/
■90770 / inTopicNo.4)  Re[3]: VB.NETで別クラスからDataTable読出し
□投稿者/ WebSurfer (1807回)-(2019/04/18(Thu) 18:53:26)
No90768 (TanuTanu さん) に返信

> 返信頂いた内容は理解しましたが、「DataSet への参照を引数として渡せるコンストラクタを追加定義」とはそれようのクラス
> が別途必要って事ですか?

違います。クラスは一つでいいです。そのクラスの中にコンストラクタを追加するということです。
引用返信 編集キー/
■90771 / inTopicNo.5)  Re[4]: VB.NETで別クラスからDataTable読出し
□投稿者/ TanuTanu (27回)-(2019/04/18(Thu) 20:40:13)
WebSurfer さん


ありがとうございます。
これで呼び出しする事が出来ました。

呼び出し側

Dim DRR As New データ読出し
DRR.Check(Dataset1.Table1)

***************

Public Class データ読出し

Public Sub Check(ByRef DATA As DataTable)

Debug.WriteLine(DATA.Rows(0)(0).ToString)

END SUB
End Class



解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -