1

いくつかのチュートリアルプロジェクトを作成しようとしていますが、その一部をプロジェクト間で共有できるように、その一部をユーザーコントロール(共通のプロジェクトにあるプロジェクトに.csファイルとして含まれています)にしました。フォルダ)。問題は、プロジェクトをコンパイルしない限り、ユーザーコントロールを追加したフォームの設計者(ツールボックスからドラッグアンドドロップ)が、(プロジェクトのクリーンアップ後に)フォームを開いたときに例外をスローすることです。

タイプ'WindowsFormsApplication4.UserControl1'が見つかりませんでした。このタイプを含むアセンブリが参照されていることを確認してください。このタイプが開発プロジェクトの一部である場合は、現在のプラットフォームまたは任意のCPUの設定を使用してプロジェクトが正常にビルドされていることを確認してください。

私はプロジェクトを使いやすくしようとしているので、ユーザーに最初にコンパイルするように要求しても、プロジェクトはそうではありません。デザイン時にレンダリングする前に、デザイナーにユーザーコントロールをコンパイルさせる方法はありますか?(コンパイルされたファイルを配布することはオプションではありません)

または、デザイン時に別のオブジェクトを表示するようにフォームデザイナーを構成できますか?ユーザーコントロールがコンパイルされていない場合に表示されるプレースホルダー?

4

1 に答える 1

1

いいえ。Designerは、コントロールを表示するコードを実際に実行しているため、 UserControl(実際にはany )をコンパイルする必要があります。Control

デザイナが正しく機能する前にプロジェクトをビルドするか、コントロールのアセンブリが事前にビルドされた状態でプロジェクトを配布する必要があります。

于 2013-02-13T17:34:12.300 に答える