同様の質問を扱うスレッドが多数ありますが、このケースをカバーするものは見つかりませんでした。アセンブリをカスタムUITypeEditorからデザイン時に使用する
私は、クラスライブラリを参照するメインアプリケーションを持っています。クラスライブラリには、クラスライブラリではなく、メインアプリケーションで使用可能なフォームのドロップダウンからフォーム名を入力する必要があるプロパティを持つコントロールがあります。
私はのUITypeEditorコードの内、
Control owner = context.Instance as Control;
は私にプロパティ値が必要とされているコントロールへの参照を与える、ということを発見しました。しかし、ドロップダウンで利用可能なフォーム名を一覧表示できるように、適切なアセンブリ(メインアプリケーションではなく、コントロールがあるライブラリではない)への参照を取得することは困難であることが判明しました。
owner.GetType().Assembly.ToString()
- ---私のクラスライブラリの名前ではなく、メインのアプリ
Assembly.GetExecutingAssembly().ToString()
を与えてくれたクラスライブラリの名前を与えます
Assembly.GetCallingAssembly().ToString()
---私のSystem.Windows.Forms
私は、そのアセンブリを必要とするカスタムエディタでプロパティを持つコントロールを配置しているフォームのアセンブリを取得するためのルートがありません。