2016-12-20 18 views
-1

フォームでvb.net 2013のパブリック変数を初期化しようとしていて、データグリッドビューからその値を設定し、その値を使用するときに他のフォームに値を使用しようとしています。ここ公開変数を初期化する

ゼロは初期

Public IdSt As Long 

設定値であるため、それ

 IdSt = Me.DataGridView1.SelectedRows(0).Cells(0).Value 

、これは私がそれを使用する場所である

Dim std As Long 
    If logIn.flag = True Then 

     std = logIn.idstu 
    Else 

     std = CourseReq.IdSt 
    End If 
+1

vba <> vb.net。私はvbaタグを削除しました。 –

+0

タイトルにタグを入れないでください。私はそれを削除しました。 [お問い合わせ]を読んでくださいまた、[ツアー]を取る。あなたはアクセスレベル( 'Public')を' Scope'と混同しているかもしれません。誰が見ることができるか 'Idst'は***に依存しています***デカールされています – Plutonix

+2

あなたの質問は何ですか?何が問題ですか? – Dai

答えて

0

正しいオブジェクトを参照していないようです。

あなたはMainFormをしてSecondFormと呼ばれる2つの形式があり、このようにそれらを宣言した場合、例えば、私にしてみましょう:

Dim myMainForm as New MainForm 
Dim mySecondForm as New SecondForm 

あなたはMainFormを .IdStを実行してIDSTにアクセスしようとすると、それは同じではありませんmyMainForm .IdSt。

したがって、変数を設定した実際のメインフォームオブジェクトにアクセスできることを確認してください。

+0

同じと私は確信しています、私はフォームがちょうど初期値を印刷すると思うので、私は別のフォームで値を0と呼び出すと出力が正しいと同じフォームで変数の値を表示しようとするとき –

+0

私は申し訳ありませんが、私は悪い英語を持っています –

+0

同じフォーム名を使用しないでください。上記の例のように、オブジェクトがクラスとは異なる名前を持っていることを確認してください。それで問題が見つかるはずです。 –

関連する問題