我是一名 ASP.NET 程序员,专注于 B/S 项目开发。累计文章阅读量超过一千万,我的博客主页地址:https://www.itsvse.com/blog_xzz.html

引言

.net core 3.1 是微软LTS长期3年支持版本,正式发布于2019-12-03,并且在windows平台上支持了Winfrom跟WPF桌面应用。本文将介绍使用 vs 2019 开发 Windows Forms 桌面应用程序。

开发 Windows Forms 程序

首先,打开 vs 2019 ide 工具,新建一个 Windows Forms App(.Net Core) 项目,如下图:

默认是 .net core 3.1 的框架。

双击 Form1 发现并没有弹出窗体设计器,what?

没有5年10年的开发经验,让我直接手写 WinForm 代码,这不是给我开玩笑嘛。

最后,发现需要安装“winforms-designer”插件,才能使用窗体设计器,使用拖拽控件的方式。

https://aka.ms/winforms-designer

在Visual Studio 16.5 Preview 1中更新到.NET Core Windows Forms设计器

我们很高兴宣布.NET Core Windows窗体设计器的新预览版,可在Visual Studio 16.5 Preview 1中使用。

令人欣慰的是,设计师现在已成为Visual Studio的一部分!这意味着不再需要从单独的VSIX安装.NET Core Windows Forms设计器!

要使用设计器:

您必须使用Visual Studio 16.5 Preview 1或更高版本。

您需要在Visual Studio中启用设计器。转到“ 工具” >“ 选项” >“ 环境” >“ 预览功能”,然后选择“ 将预览Windows窗体设计器用于.NET Core应用程序”选项。

然后,开始更新 vs 2019,点击导航栏的:工具 - 检查更新,发现新版本,更新之。

发现事情并不是那么简单,更新的是发布版本,只有预览版才有这功能,正式版本最高才 16.4.2。

解决办法

1.单独的VSIX安装.NET Core Windows Forms设计器

2.项目做如下更改:

将

<TargetFramework>netcoreapp3.1</TargetFramework>

更改为

 <TargetFrameworks>net472;netcoreapp3.1</TargetFrameworks>

重新编译之,报错如下:

  • “Application”未包含“SetHighDpiMode”的定义
  • 当前上下文中不存在名称“HighDpiMode”

点击跳转到错误代码,注释之。

//Application.SetHighDpiMode(HighDpiMode.SystemAware);

再次双击“Form1.cs”文件,就可以看到我们的设计器了,我们就可以拖拖控件了。如下图:

原文:https://down.itsvse.com/k/os0740.html

.net core 开发 Windows Forms 程序的更多相关文章

  1. 分析现有 WPF / Windows Forms 程序能否顺利迁移到 .NET Core 3.0

    本文转自 https://blog.csdn.net/WPwalter/article/details/82859449 使用 .NET Core 3.0 Desktop API Analyzer 分 ...

  2. 【转】.net core开发windows服务

    .net core开发windows服务 文建Blog

  3. 分析现有 WPF / Windows Forms 程序能否顺利迁移到 .NET Core 3.0(使用 .NET Core 3.0 Desktop API Analyzer )

    今年五月的 Build 大会上,微软说 .NET Core 3.0 将带来 WPF / Windows Forms 这些桌面应用的支持.当然,是通过 Windows 兼容包(Windows Compa ...

  4. .NET开发Windows Service程序 - Topshelf

    在实际项目开发过程中,会经常写一些类似定时检查,应用监控的应用.这类应用在windows平台通常都会写成window service程序. 在百度上搜索一下'c#开发windows service', ...

  5. VC++ 2013 开发windows窗体程序

    开发工具版本:Visual Studio Express 2013 for Windows Desktop 1. 新建Visual C++下面的"Win32 Project" 2. ...

  6. Qt入门——使用QT+VS2008开发windows应用程序

    1.文件->新建->项目 Qt4 Projects 右边已安装模板当中选择At Application. 确定 2.选择需要使用的QT库 下一步 3. “class name”:指定类的名 ...

  7. 如何为Windows Forms应用程序添加启动参数(Start-Up Parameters)

    很多场合下,我们需要通过命令行或者快捷方式在Windows Forms程序启动时向其传递参数. 这些参数可能是用来加载某一个文档,或者是应用程序的初始化配置文件. 特别是对那些需要高度自定义配置的大程 ...

  8. 开发Windows程序的三种方式

    软件开发方式一共有三种:SDK方式.MFC开发方式.托管环境的开发都是基于消息的开发 SDK方式 原装api的调用SDK方式使用C语言和Windows应用程序编程接口(Windows API)来开发W ...

  9. Windows Forms(二)

    导读 1.用VS创建一个Windows Forms程序 2.分析上面的程序 3.Mediator pattern(中介者模式) 4.卡UI怎么办——BackgroundWorker组件 用VS创建一个 ...

随机推荐

  1. spring4.2.4整合ehcache

    最近工作中遇到个功能需要整合ehcache,由于spring版本用的是4.2.4,而在ehcache官网找到的集成配置文档是spring3.1的,因此配了几次都不成功,在历经一番波折后终于成功集成了s ...

  2. learn more ,study less(一):整体性学习策略

    作者:scott young 一.整体性学习策略 整体性学习是一种学习理论.它更精确.全面地描述了我们大脑是如何工作的.各位, 你的大脑并非简单如计算机的文档储存,计算机文档的本质是一系列 0 和 1 ...

  3. Servlet概念及配置

    Servlet 简介: servlet就是sun公司开发动态web的一门技术 Sun在这些API中提供一个接口叫做:Servlet,如果逆向开发一个Servlet程序,只需要完成两个小步骤: 1.编写 ...

  4. 机器学习:没有免费午餐定理(No Free Lunch Theorem)

    思考 机器学习中哪个算法好?哪个算法差呢? 下面两条线,哪个更好呢? 没有免费午餐定理 如果我们不对特征空间有先验假设,则所有算法的平均表现是一样的. 假设我们的计算机只有两个存储单元,而且每个存储单 ...

  5. Spring Cloud中Eureka注册显示UNKNOWN问题

    这是由于application.yml里spring没有配置实例造成的

  6. 2020 University Rankings US News(亚洲)

    2020 University Rankings US News(亚洲)

  7. linux系统下gdb的简单调试

    当我们写完程序后,我们会运行程序,在这个过程中,可能程序会出现错误. 我们可以利用gdb调试去看我们运行的程序,并且我们新手通过gdb调试能更好地去读懂 别人的程序.让我们更好的学习. 我们看下面这条 ...

  8. ceph问题

    问题1: [root@admin-node my-cluster]# ceph -s cluster 4ca35731-2ccf-47fb-9f06-41fae858626d health HEALT ...

  9. qt5实现简单布局

    layout.h #ifndef LAYOUT_H #define LAYOUT_H #include <QtWidgets/QDialog> #include <QLabel> ...

  10. Mplayer另类在线播放影音文件技巧【转】

    http://www.linuxsir.org/bbs/showthread.php?t=254467 本文介绍的Mplayer在线播放的方法,不是指在浏览器中安装Mplayer插件这种方法,而是在命 ...