- PR -

データセットについて

投稿者投稿内容
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-13 18:44
引用:

だんくさんの書き込み (2006-02-13 18:17) より:

まだ、言い訳にもなりませんが、初心者ですから、
今までは、サンプルコードに手を加える程度でしたので、
引数といわれましても、困惑しております。
申し訳ありません。


わからないのは仕方がないのですが、それを言ってくれないと私もわかりません。
引数という言葉自体がわからないんでしょうか?
それとも、実装方法でしょうか?

引用:

囚人様、これはVBなのですか?


いいえ、C# ですね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2006-02-13 18:55
引用:

囚人様、これはVBなのですか?そのstaticというのがネックになりそうなんですね。
入力もしますので、変更が反映されないのは、困ります。


すみません。環境VBと仰られているのだからVBでお答えすべきでしたね。

私が出した案は改善を期待しているのですが、ここではじゃんぬさん、Yamさんの方式を採られて良いでしょう。

ちなみに…
コード:
Public Class Form2

    Public Sub ShowMe(ByRef ホニャララ As DataSet)
        Me.Show()

        後はホニャララを焼くなり煮るなりお好きなように
    End Sub
End Class



コード:
Public Class Form2

    Public Sub ShowMe(ByVal ホニャララ As DataSet)
        Me.Show()

        後はホニャララを焼くなり煮るなりお好きなように
    End Sub
End Class


のほうがいいよね^^;

#「文法的に正しいとは限りません^^;」と仰っているけどツッコミ^^;

_________________
囚人のジレンマな日々
_________________
囚人のジレンマな日々
Yam
大ベテラン
会議室デビュー日: 2003/09/13
投稿数: 179
お住まい・勤務地: だんじり祭りの地
投稿日時: 2006-02-13 19:22
引用:

囚人さんの書き込み (2006-02-13 18:55) より:
ちなみに…
コード:
Public Class Form2

    Public Sub ShowMe(ByRef ホニャララ As DataSet)
        Me.Show()

        後はホニャララを焼くなり煮るなりお好きなように
    End Sub
End Class



コード:
Public Class Form2

    Public Sub ShowMe(ByVal ホニャララ As DataSet)
        Me.Show()

        後はホニャララを焼くなり煮るなりお好きなように
    End Sub
End Class


のほうがいいよね^^;

#「文法的に正しいとは限りません^^;」と仰っているけどツッコミ^^;


突っ込まれちゃいました。
引用:

だんくさんの書き込み (2006-02-13 18:17) より:

入力もしますので、変更が反映されないのは、困ります。


なのでByRefにしたのですがデータセットをByRefすると拙いですか?
VBはあんまり使わないので(イイワケ^^; 
_________________
音速の定時退社!
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-13 21:13
引用:

Yamさんの書き込み (2006-02-13 19:22) より:

なのでByRefにしたのですがデータセットをByRefすると拙いですか?
VBはあんまり使わないので(イイワケ^^; 


参照型なので ByRef にする必要はないですよね。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Yam
大ベテラン
会議室デビュー日: 2003/09/13
投稿数: 179
お住まい・勤務地: だんじり祭りの地
投稿日時: 2006-02-14 10:09
じゃんぬねっとさん、ありがとうございます。
そうでした。
文字列、配列、クラス等は参照型なのでByVal指定でも参照になりますね。

_________________
音速の定時退社!
だんく
常連さん
会議室デビュー日: 2006/02/06
投稿数: 47
投稿日時: 2006-02-14 12:48
引用:

Yamさんの書き込み (2006-02-13 18:29) より:
横から失礼します。

じゃんぬねっとさんの方法は大凡以下のような感じになります。
コード:
Public Class Form1
    public ホニャララ as DataSet

    private sub データ取得()
        Me.TableAdapter.Fill(Me.ホニャララ.Table) 
    End Sub
		
    private sub Form2を開く()
        Dim testDialog As New Form2()
        testDialog.ShowMe(ホニャララ)
    End Sub
End Class
	
Public Class Form2

    Public Sub ShowMe(ByRef ホニャララ As DataSet)
        Me.Show()

        後はホニャララを焼くなり煮るなりお好きなように
    End Sub
End Class


#質問の趣旨に関係ないコードは省略しています。
#文法的に正しいとは限りません^^;




ありがとうございます。
この方法で試してみます。
結果が出たら報告いたします。
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2006-02-14 13:28
引用:

Yamさんの書き込み (2006-02-14 10:09) より:
じゃんぬねっとさん、ありがとうございます。
そうでした。
文字列、配列、クラス等は参照型なのでByVal指定でも参照になりますね。


いやどちらでもよかったのですが、次のようにするとまるで結果が変わってしまいますからね^^;
コード:
Public Sub ShowMe(ByRef ホニャララ As DataSet)
    Me.Show()
	ホニャララ = New DataSet
End Sub



コード:
Public Sub ShowMe(ByVal ホニャララ As DataSet)
    Me.Show()
	ホニャララ = New DataSet
End Sub



_________________
囚人のジレンマな日々
Yam
大ベテラン
会議室デビュー日: 2003/09/13
投稿数: 179
お住まい・勤務地: だんじり祭りの地
投稿日時: 2006-02-14 14:28
そうですね、値の変更ならByValでもByRehでも同様ですがNewの場合は、
ByValでもらったオブジェクトはNewしても元Formでは保たれていますけど
ByRefでもらったオブジェクトをNewするとそうはいきませんからね。

#親からもらったデータセットをNewするとはなんて不孝な子なんでしょう

_________________
音速の定時退社!

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