a32kitaWPFで、ライブラリにUserControlを定義して利用しようとしたところFileNotFoundExceptionが発生しました。状況と対処法、並びに原因の考察についてご紹介致します。私が遭遇したFileNotFoundExceptionは次のような状況で発生しました。一部コントロールで利用するコンポーネントをライブラリ「Vectors」へ定義し「Controls」から参照ビルド時のエラーは発生しない、実行時にFileNotFoundExceptionが発生してしまうちなみに例外発生時のソリューションと参照の構成は以下の通り。親アセンブリにメインウィンドウを定義し、子アセンブリにウィンドウに配置する各種コントロールを定義、更に孫アセンブリに子アセンブリのコントロールから利用する一部コンポーネントを定義したという形です。つが読み込めませんでした。指定されたファイルが見つかりません。つが読み込めませんでした。指定されたファイルが見つかりません。この状態のまま実行すると、図3のような例外が...。Framework標準アセンブリの参照が不足しているのか、ソリューションをクリーンしてリビルド掛けるべきなのか、いろいろ原因を考えやってみましたが、なかなか解決できませんでした。追加することで解決できました。問題だったようですね。通常、メインの親アセンブリから参照している子アセンブリが、更に参照している孫アセンブリは、メインの親アセンブリをビルドする際に、ビルド結果の出力先に子アセンブリとともにコピーされます。そのコピーが行われるのは、どうもコード上で本当に参照が必要とみなされた場合のみみたいなんですよね。コード上で子アセンブリが孫アセンブリの中の定義を利用していると判断された際にコピーが実行されるようです。XAML上だけで子アセンブリが孫アセンブリを利用した際は、子アセンブリが孫アセンブリを必要としているとみなされないようです。そのため、メインの親アセンブリの出力先ディレクトリに、親アセンブリから直接参照設定が行われていない孫アセンブリはコピーされないみたいなんです。