主にプログラミングに関して。Python, .NET Framework(C#), JavaScript, その他いくらか。
記事にあるサンプルやコードは要検証。使用に際しては責任を負いかねます

スポンサーサイト

                
tags:
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

C#: Convert String to Object Instance

                
C#で文字列でクラスを指定してクラスインスタンスを作成したい、と考えていたところActivator.CreateInstanceメソッドというのを知った。
Activator.CreateInstance(AssemblyNameString, ClassNameString)
上記のように使える。

で、ぼくがやりたかったのはXmlReaderを使ったXAMLのパース。WPFのコントロールの場合どう使うかという具体例が以下。
var str = "Button";
var className = "System.Windows.Controls." + str;
var hoge = Activator.CreateInstance("PresentationFramework", className);

以上のようなコードを書くのと同時に重要なのが、実行ファイルがクラスの入っているDLLを参照できるようにすること。この場合だとButtonクラスが入っているPresentationFramework.dllを実行フォルダに配置するなり、パスを通すなり。VisualStudioなどのIDEを使っているなら、DLLのオプションでローカルコピーができるはず。
            

コメントの投稿

非公開コメント

プロフィール

hMatoba

Author:hMatoba
Github

最新記事
リンク
作ったものなど
月別アーカイブ
カテゴリ
タグリスト

検索フォーム
Amazon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。