「'InitializeComponent'は現在のコンテキスト内に存在しません。」の対処法
ググると出てくるもの
1.名前空間+クラス名が、XAMLの「x:Class」と一致していない
AiueoPage.xaml.csファイルの
AiueoPage.xamlファイルの
ググると出てくるもの
1.名前空間+クラス名が、XAMLの「x:Class」と一致していない
AiueoPage.xaml.csファイルの
namespace 【Test.Modules.AiueoPages.Views】 と public partial class 【AiueoPage】 : UserControlが
AiueoPage.xamlファイルの
<UserControl x:Class="【Test.Modules.AiueoPages.Views.AiueoPage】" </pre> と一致していること 2.「bin」「obj」フォルダを削除後にリビルド VS閉じて、全プロジェクトから消した方が無難 3.VSを閉じて開きなおす 意味があるのかないのか… このあたりが大体ヒットします。 それでもだめだった!という方は、下記の方法を試してみてください。 4.プロジェクトファイルの確認 (.net Core 3.1 の場合です。) Test.Modules.AiueoPages.csproj 正しい奴<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop"> <PropertyGroup> <TargetFramework>netcoreapp3.1</TargetFramework> <UseWPF>true</UseWPF> <AssemblyName>Test.Modules.AiueoPage</AssemblyName> </PropertyGroup> <ItemGroup> <PackageReference Include="Prism.Wpf" Version="7.2.0.1422" /> </ItemGroup> </Project>
間違ってる奴
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netcoreapp3.1</TargetFramework> <AssemblyName>Test.Modules.AiueoPage</AssemblyName> </PropertyGroup> <ItemGroup> <PackageReference Include="Prism.Wpf" Version="7.2.0.1422" /> </ItemGroup> <ItemGroup> <ProjectReference Include="..\..\Test.Core\Test.Core.csproj" /> </ItemGroup> </Project>
違い:
1.Sdk="Microsoft.NET.Sdk.WindowsDesktop" のSDKに指定されているパスから、WindowsDesktop が消えている
2.4行目の「UseWPF」タグが消えている
1.に関しては 【.Net Core3.1】 限定かな? 【.Net 5】以降は「<Project Sdk="Microsoft.NET.Sdk">」 が正しいよね
これを治すことで、出なくなりました。
しかし、WPFでプロジェクト追加する場合って何を選択すればいいのだ…?
クラスライブラリじゃないって事か…?
検索用:WPF InitializeComponent エラー 治らない 原因 不明 新規作成 画面作成 ユーザコントロール UserControl