-1

所有者からフォームにデータを取得できますが、その逆はできません。フォームから所有者にデータを渡すにはどうすればよいですか。?

本当に使えない

       Dim ownerFrm As New ownerFrm()

そうすると、このフォームはデータベース接続やその他多くのものに読み込まれないので、それをいじるのは避けたいと思います。これには非常に簡単な解決策が必要です。しかし、私はそれを思い付くことができません。

4

2 に答える 2

2

所有者フォームは、子フォームへの参照を提供する必要があります。これを行うには複数の方法があります。たとえば、所有者フォームに子フォームが表示されている場合、次のようになります。

frmChild = New ChildForm()
frmChild.Parent = Me
frmChild.Show()

または、プロパティの代わりに、子フォームのコンストラクターをオーバーロードできます。

frmChild = New ChildForm(Me)
frmChild.Show()

または、子フォームを表示し、親を引数として取るメソッドを作成することもできます。

frmChild = New ChildForm()
frmChild.ShowChild(Me)

これらすべての場合において、子フォームには、親フォームへの参照を保持する変数が必要です。これにより、親フォームを呼び出すことができます。

もう1つのオプションは、子フォームにイベントを追加することです。子フォームが所有者フォームにデータを送信する必要がある場合、データを含むイベントを発生させることができ、所有者フォームはイベントを処理してその方法でデータを取得します。

于 2012-09-13T12:41:39.100 に答える
0

イベントを使用する必要があります(WithEventsを参照)。

于 2012-09-13T12:39:52.830 に答える