Visual Studio 2022 .NET6 or 7 ライブラリプロジェクトでMessageBox(又は同等の機能)を表示したい。
新規で作る場合は「Windows フォーム クラス ライブラリ」テンプレートを選択してください。
.csprojを編集する必要もなく、既に設定された状態になっています。
もう作り始めてしまっている場合は、.csprojを編集する必要があります。
「クラス ライブラリ」テンプレートの初期状態はこうです。
xml
1<Project Sdk="Microsoft.NET.Sdk">
2
3 <PropertyGroup>
4 <TargetFramework>net7.0</TargetFramework>
5 <ImplicitUsings>enable</ImplicitUsings>
6 <Nullable>enable</Nullable>
7 </PropertyGroup>
8
9</Project>
「Windows フォーム クラス ライブラリ」テンプレートの初期状態はこうです。
xml
1<Project Sdk="Microsoft.NET.Sdk">
2
3 <PropertyGroup>
4 <TargetFramework>net7.0-windows</TargetFramework>
5 <Nullable>enable</Nullable>
6 <UseWindowsForms>true</UseWindowsForms>
7 <ImplicitUsings>enable</ImplicitUsings>
8 </PropertyGroup>
9
10</Project>
差分となるTFM(ターゲット フレームワーク モニカー)のターゲットOS(-windows 部分)と、UseWindowsForms
を追加します。
Microsoft.NET.Sdk.Desktop の MSBuild プロパティ - .NET | Microsoft Learn
プロジェクトファイルを直接編集する方法がありましたが非推奨とありました。
.NET(Core)では「ソリューション エクスプローラー」で、プロジェクトをダブルクリックすると.csprojが開きます。
どちらかというと「直接変えてね」というスタンスに見えます。
TFMのターゲットOS変更はプロジェクトのプロパティからも変更できますが、UseWindowsForms
の変更はできません(そのうちプロパティにも出るようになるかもしれませんが)