#c# #visual-studio-2019
#c# #visual-studio-2019
Вопрос:
VS20019 создает проект Windows forms, ориентированный на .net framework (а именно .net 4.7.2), как проект в «старом» стиле. Я преобразовал недавно созданный проект в стиль SDK с Project2015To2017.Migrate2019.Tool. Преобразованный проект выполняется нормально, но в диалоговом окне VS20019 Add/New item
нет раздела Winforms и шаблона формы. В диалоговом окне VS2017 Add/New item
по-прежнему успешно отображается раздел Winforms. Так же, как VS20019 делает для оригинального проекта в «старом» стиле.
Чего мне не хватает? Преобразованный проект :
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net472</TargetFramework>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<OutputPath>bin$(Configuration)</OutputPath>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugType>full</DebugType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
</PropertyGroup>
<ItemGroup>
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Deployment" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
</ItemGroup>
<ItemGroup>
<Compile Update="Form1.cs">
<SubType>Form</SubType>
</Compile>
<Compile Update="Form1.Designer.cs">
<DependentUpon>Form1.cs</DependentUpon>
</Compile>
<EmbeddedResource Update="PropertiesResources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Update="PropertiesResources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<None Include="PropertiesSettings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Update="PropertiesSettings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
</Project>
Это VS2019 Community 16.7.1 на Windows7 prof x64.
Ответ №1:
Это правильный файл проекта. Примечание <UseWindowsForms>true</UseWindowsForms>
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>net472</TargetFramework>
<UseWindowsForms>true</UseWindowsForms>
...
Ответ №2:
Для WPF и Winforms:
<UseWPF>true</UseWPF>
<UseWindowsForms>true</UseWindowsForms>