DOBON.NET DOBON.NETプログラミング掲示板過去ログ

任意に指定したフォームを起動

環境/言語:[環境:WindowsXP、使用言語:VB2005、.NET Framework2.0]
分類:[.NET]

初めて投稿させていただきます。

テキストボックス等にフォーム名を記述して、そのフォームを
オープンするというプログラムを作りたいのですが、なかなか
うまくいきません。
(最終的にはデータベースにフォーム名を書いてデータベースを
更新するとオープンされるフォームが切り替わる仕様にしたいと
考えています)

以下のようなニュアンスでプログラムを書いてみましたが、コンパイル時に
型 'String' の値を 'System.Windows.Forms.Form' に変換できません。
とエラーが出てしまい、悩んでいる所です。

Dim fm As Form

'TextBox1の中身に"Form2"と書いてForm2をオープンしたい
'Form2は存在するフォームです
fm = CType(TextBox1.Text, Form) 'エラー
fm.ShowDialog()

何か方法があるとは思うのですが、どうしてもその方法が見つけられなかったので
もしご存知の方がいらっしゃいましたら、御教授下さい。
ここのHome Pageのトピックより

文字列で指定されたクラスのインスタンスを作成し、メソッドを実行する
http://dobon.net/vb/dotnet/programing/createinstancefromstring.html
Blue様

ホームページ内のトピックを見落としていました。
申し訳ありませんでした。

紹介していただいたトピックを参考にして
無事解決しました。

どうもありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板