首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在.Net核心类库- .NET核心控制库中使用.NET窗体

在.Net核心类库- .NET核心控制库中使用.NET窗体
EN

Stack Overflow用户
提问于 2019-08-15 12:52:45
回答 5查看 13.5K关注 0票数 14

我正在尝试创建一个.net核心3类库,它引用了winform的.net核心3版本(因此这个程序集本身可以被.net核心3 WinForm程序集引用)。

一个新的.net核心WinForm项目引用了Microsoft.WindowsDesktop.App.WindowsForms,但是我找不到任何这个名称的nuget包。

我需要做什么来引用.net核心3 winform?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2019-08-15 16:25:36

更新:在VS 2019的以后版本中(我尝试了16.8.2版),有一个用于.NET核心的项目模板。

目前Windows窗体.NET核心处于预览模式,我不知道任何官方的Nuget软件包或.NET内核中的的项目模板,在VS 201916.2.2中。

但是要创建Windows窗体控件库,可以使用以下说明:

  1. 添加一个新的类库项目(.NET核心)
  2. 创建项目后,右键单击“项目文件”并选择“编辑项目文件”
  3. 将项目SDK更改为<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
  4. 通过添加<UseWindowsForms>true</UseWindowsForms>将windows窗体指定为UI技术。

现在,项目文件应该如下所示:

代码语言:javascript
复制
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
  <PropertyGroup>
    <OutputType>Library</OutputType>
    <TargetFramework>netcoreapp3.0</TargetFramework>
    <UseWindowsForms>true</UseWindowsForms>
  </PropertyGroup>
</Project>

现在,您可以将Windows元素(如FormUserControl )添加到此项目中,并在没有任何问题的情况下构建项目。

票数 21
EN

Stack Overflow用户

发布于 2020-08-11 00:15:04

我有一个核心3.1Web应用程序,它引用了一个框架4.5.2项目,该项目依赖于System.Windows.Forms。我的修正是将下面的行添加到web应用程序csproj文件中:

Include="Microsoft.WindowsDesktop.App.WindowsForms" FrameworkReference

代码语言:javascript
复制
<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFrameworks>netcoreapp3.1</TargetFrameworks>
    <UseWindowsForms>true</UseWindowsForms>
  </PropertyGroup>

  <ItemGroup>
    <FrameworkReference Include="Microsoft.WindowsDesktop.App.WindowsForms" />
  </ItemGroup>

</Project>
票数 6
EN

Stack Overflow用户

发布于 2021-03-02 11:18:45

目前接受的答案似乎有些过时。最近的语法要求目标在TargetFramework标记中指定,而不是在Sdk标记中指定:

代码语言:javascript
复制
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Library</OutputType>
    <TargetFramework>net5.0-windows</TargetFramework>
    <UseWindowsForms>true</UseWindowsForms>
    <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
  </PropertyGroup>

</Project>

这里有更多的信息

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57509951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档