--- lang: ja-jp breaks: true --- # visual studio 2022 をバージョン17.5.1 に上げてから、C# Formデザイナーが開かなくなりました。 2023-03-08 ## 再現環境 * Windows 11 Pro 22H2 (22621.1265) * Microsoft Visual Studio Professional 2022 (64 ビット) - Current Version 17.5.1 ## 再現手順 1. Visual Studio 2022を立ち上げて、「新しいプロジェクトの作成」をクリックします。 2. 「Windows フォーム アプリ」テンプレートを選択して「次へ」を押します。 3. プロジェクト名はデフォルトのまま。例えば、「WinFormsApp4」 4. 場所は、適当な場所。 5. ソリューション名はデフォルトまま。例えば、「WinFormsApp4」 6. 「ソリューションとプロジェクトを同じディレクトリに配置する」のチェックを外す 7. 「次へ」をクリックし、フレームワークで「.NET 7.0(標準用語のサポート)」を選択して「作成」を押します。 * 「.NET 6.0」でも同様の現象。 8. ソリューションエクスプローラを確認すると、「Form1.cs」のアイコンがFormを表すもので表示され、正常に動作します。  9. 一旦、Visual Studio 2022を閉じます。 10. エクスプローラから、該当のソリューションファイルがあるディレクトリに移動し、「.vs」フォルダを削除します。 11. 「WinFormsApp4」フォルダの中から、「bin」と「obj」フォルダ、「WinFormsApp4.csproj.user」ファイルを削除します。 12. 「WinFormsApp4.sln」を Visual Studio 2022で開きます。  このまままっていても、「Form1.cs」のアイコンがFormのものにかわることはありません。 ダブルクリックしても、ソースコードが表示されるだけでFromデザイナは表示されません。 ## 一次的な解決方法 Windows Form関連のモジュールが、`form` フォルダにある場合は、`*.csproj` に以下を追加すればフォームデザイナを開くことが出来ます。 ```xml= <ItemGroup> <Compile Remove="form\**\*.cs" /> <Compile Include="form\**\*.Designer.cs" /> <Compile Include="form\**\*.cs" Exclude="form\**\*.Designer.cs"> <SubType>Form</SubType> </Compile> </ItemGroup> ``` `form`フォルダにない場合かつ、該当のフォームモジュールのクラス名に`Form`という文字列がある場合は、`*.csproj` ファイルに以下を追記する事で、一旦解消できます。 ```xml= <ItemGroup> <Compile Remove="**\*Form*.cs" /> <Compile Include="**\*Form*.Designer.cs" /> <Compile Include="**\*Form*.cs" Exclude="**\*Form*.Designer.cs"> <SubType>Form</SubType> </Compile> </ItemGroup> ```  ## Windows11 をクリーンインストールした仮想マシンに、Visual Studio 2022をインストールして試したところ、正常に動作した。 何が原因か、さらに検証が必要。。。 ## 似たような事象がフィードバックとして報告されていた。 2021年03月なので関係ないか。。。 > VS2022 で Windows フォームプロジェクトを作成するとフォームデザイナを開けない > https://developercommunity.visualstudio.com/t/vs2022-%E3%81%A6-windows-%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%83%95%E3%83%AD%E3%82%B7%E3%82%A7%E3%82%AF%E3%83%88%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B%E3%81%A8%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%83%86%E3%82%B5%E3%82%A4%E3%83%8A%E3%82%92%E9%96%8B%E3%81%91%E3%81%AA%E3%81%84/1574761 > > ブロックを解除するための回避策を紹介します。VSでプロジェクトを開いた後、ソリューションエクスプローラでForm1.csファイルにフォーカスし、Build Actionプロパティを別の値に変更し、C#コンパイラに戻る。しばらく待つと、フォームデザイナーが復活します。 > VS 2022 - WinForms .NET Designer does not automatically show the design surface when creating a new project > https://developercommunity.visualstudio.com/t/WinForms-NET-Designer-does-not-automati/1570208 ###### tags: `Visual Studio 2022` `Visual Studio` `WinForm` `Formデザイナ`
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.