- PR -

Activator.CreateInstance() について

1
投稿者投稿内容
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2005-06-16 10:25
いつもお世話になります。さかもとと申します。
・VB.NET 
・Winアプリ

現在,文字列変数より一致するフォームIDを元にインスタンスの生成を動的に
行う方法について苦慮しております。

1:コンボボックスよりフォームIDを指定
2:指定されたフォームを表示

過去ログ
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=12545&forum=7
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=5724&forum=7
にたどり着き
Activator.CreateInstance()にて生成を行うことまでは分かりました。

そこで
======================================================================
Dim _frm as Form
Dim strNm as String = strMenuID 'コンボボックスより取得
Dim frmID As String = "AsmHoge." & strNm 'アセンブリ名
Dim ty As Type = Type.GetType(frmID) 'タイプの取得
Dim myfrm As Form = Activator.CreateInstance(ty) 'インスタンスの生成

_frm = New ...?? '★ここが不明・・・

If myfrm Is Nothing OrElse myfrm.IsDisposed Then
myfrm.Show()'画面の表示
End If
=======================================================================

今現在myfrmに該当フォームのプロパティ等が取得できてはいるのですが,
最終的に画面表示が出来ておりません。(インスタンスの生成は出来ている・・・?)

根本的に間違っているのかもしれませんが,ご指摘,ご教授頂ければと
思います。

宜しくお願いいたします。
さかもと
ぬし
会議室デビュー日: 2004/05/14
投稿数: 586
投稿日時: 2005-06-16 10:57
さかもと 自己レスです。

申し訳ありません,参考の過去ログの方法で表示が出来ていました。
MDIフォームを利用しており,そちらのコーディング上の問題で表示されてないだけでした。
MDIフォームの使い方について色々と勉強後に再度質問させて頂きます。

ありがとうございました。
1

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