ダイアログボックスの親フォームから情報を取得するには?

解決


とも  2008-12-08 04:07:21  No: 101406

ダイアログボックスから親フォームのパブリックデータにアクセスする方法として、ヘルプ検索すると「Form.ParentFormプロパティを使用する方法例」として下記のようなコードが紹介されています。
--【ヘルプ記載のコード(Textプロパティにアクセスしています)】--
Public Sub GetParentText()
   Dim x As String
   x = CType(Me.ParentForm, Form1).Text
End Sub
-----------------------【以上】-------------------------------
  しかし、このコードを実行すると「オブジェクト参照がオブジェクトインスタンスに設定されていません」とのエラーが出ます。
  ダイアログボックスは'myForm.ShowDialog(Me)'メソッドで開いています。ちなみにこのヘルプはモードレス用の内容なのかとも思い、Form1のIsMdiContainerプロパティを'True'に設定し、'myForm.Show()'で試してもみましたが、どうも違うようです。現在どこに不備があるのかわからないでいます。
  メーカーヘルプのためコード自体は問題ないと思います。おそらく私の読み間違いがあるのだと思います。どこが間違っているのかどなたかご指摘いただけないでしょうか。よろしくお願いします。


やじゅ  2008-12-08 06:35:18  No: 101407

CTypeを使っているってことは、VB.NETですかね?
この掲示板は、VB6以下ですけど。

x = CType(Me.Owner, Form1).Text
Ownerプロパティで出来ませんかね。


とも  2008-12-08 08:03:49  No: 101408

すみません掲示板を間違えたようです。正しい掲示板に改めて掲示します。お騒がせしました。


とも  2008-12-08 08:32:16  No: 101409

やじゅさんのアドバイス「Ownerプロパティ」で試してみたところうまくいきました。
  やじゅさんどうもありがとうございました。
---------【解決したコード】----------
Public Sub GetParentText()
   Dim x As String
   x = CType(Me.Owner, Form1).Text
End Sub
--------------【以上】---------------


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加