前提・実現したいこと
WindowsフォームアプリのVB6からVB.NETへの変換を行っています。
VB6で使われていたコントロール配列の、VB.NETに変更した時の取り扱いについて、調べましたが不明点が多いため、質問させてください。
発生している問題・エラーメッセージ
アップデートにて、フォームの呼び出し場所が問題となっています。
該当フォームをLoadで呼び出しています。
ここは、通常の呼び出し(オブジェクト化して、.ShowDialog)で問題ないようにかんがえていましたが、DispForm()にて、frmForm1(i)を参照するようになっていました。
この場合、複数同じフォームを呼び出すという事で、フォーム自体がコントロール配列になっている?と考えて調べていたのですが、なかなか情報が出てきません。よろしくお願いいたします。
getFrom.vb
1 2private Sub LoadFrm(ByRef index As Short) 3 4 With frmFrom1(index) 5 6 .No = index 7 8 'UPGRADE_ISSUE: Load ステートメント はサポートされていません。 9 Load(frmFrom1(index)) 10 .Show 11 12 ・ 13 ・ 14 ・ 15 End With 16End Sub 17 18Public Sub DispForm() 19 20 For i = oldIndex To newIndex 21 Call frmFrom1(i).メソッド() ←フォームのコントロール配列!? 22 Next i 23 24End Sub 25
該当のソースコード
VB.NET
1 Call frmFrom1(i).メソッド() ←フォームのコントロール配列!?
試したこと
1)下記のように変更しようとしたが、frmFrom1(i)の部分をどう変更したらいいか分からず詰まっている状況。
VB.NET
1 Dim frmFrom1 As New From1() 2 3 frmFrom1.No = index 4 ・ 5 ・ 6 ・
2)コントロール配列について調査・・・肝心なところがリンク切れ
https://www.nda.co.jp/memo/vdoko/2.html
補足情報(FW/ツールのバージョンなど)
OS:Windows10
開発環境:Visual Studio 2017
使用フレームワーク:.Net Framwark 4.6.1
回答2件
あなたの回答
tips
プレビュー