SilverLight3でエラー発生(名前 ‘InitializeComponent’ は現在のコンテキスト内に存在しません。)
SilverLight3で共通のページをクラスライブラリ化しようと思い、xamlのプログラムをクラスライブラリのプロジェクトへコピーしました。
namespaceとかを修正して、コンパイルするとすると「名前 ‘InitializeComponent’ は現在のコンテキスト内に存在しません。 」のエラーが発生するようになりました。ほかにも画面に配置したコントロールも見つからないとエラーが出てます。
いろいろ調査してみると、隠しフォルダーにあるfogefoge.g.csが正しく再作成されてないことを見つけました。 (例:ソルーション\プロジェクト\obj\Debug\fogefohe.g.cs)通常は、xamlを修正すれば、コンパイル時に自動的に再作成されるはずなのですが・・・
いろいろ調べていくと・・・見つけました。^^v
xamlプログラムをクラスライブラリーにコピーすると、xamlのプロパティ内の「ビルドアクション」がPage →ApplicationDefinitionに勝手に変更されています。その結果、その後のコンパイルでfogefoge.g.csが正しく再作成されないようです。
ここまでわかれば修正は簡単です。このビルトアクションをPageに戻してやれば正常にコンパイルできるようになりました。
めでたしめでたし^^
“SilverLight3でエラー発生(名前 ‘InitializeComponent’ は現在のコンテキスト内に存在しません。)” に対して1件のコメントがあります。