概  述

.Net Core是微软发布的下一代开发平台,是一个用来构建现代化的、可伸缩的和高性能的,可以跨平台的应用软件通用开发框架。和.Net Framework相比具有良好的跨平台特性和更优异的性能,除了可以在Windows平台上运行外还支持Linux和MacOS平台。

在.Net Core的早期版本尚不支持开发桌面应用程序。如果我们想用C#开发桌面应用程序的话只能使用.Net Framework或者MONO平台。不过自9月23日微软正式发布.Net Core 3.0起,我们也可以基于.Net Core来开发桌面应用程序了。

VS2019 16.3

微软的桌面应用程序开发技术主要有WinForms和WPF两种。这两种技术现在.Net Core 3.0都支持,不过它们只能在Windows平台上运行。如果想用C#开发跨平台的桌面应用只能选择MONO了。

开发基于.Net Core 3.0平台的桌面应用程序必须要安装Visual Studio 2019 16.3或更高的版本,可以直接使用Visual Studio Installer在线升级。目前官网上可以升级的最新版本是16.3.1。 

图一 VS2019 16.3.1

不过目前的VS2019中还没有集成Windows Forms图形设计器,需要的话得从https://aka.ms/winforms-designer单独下载安装。

创建WinForms程序

双击打开Visual Studio 2019,选择“创建新项目”,参见下图所示。

图二 创建新项目

然后在项目模板中选择“Windows Forms App(.NET Core)”,注意这里使用的框架是.Net Core了,而不是之前我们一直使用的.Net Framework。当然在VS2019中我们依然可以使用.Net Framework来开发桌面应用程序。

图三 选择项目模板

点击“下一步”,输入项目名称和存储路径。

图四 项目名称和路径

点击按钮“创建”即可生成一个新的Windows Forms项目。

图五 Windows Forms项目

由于目前Windows Forms的图形设计器还在完善中,所以支持的控件还不是很多,后面微软开发团队会逐步完善。分别拖一个按钮和文本控件到窗体上。

图六 窗体上添加控件

按钮点击事件中写下代码textBox1.Text = “Hello, DotNet Core 3.0!”,运行程序后就可以下面的效果。

图七 程序执行效果

总  结 

.Net Core是微软下一代的软件开发方向,它是一个全栈平台,无论是互联网、IOT或者移动应用都可以一个平台搞定。另外更快的启动速度、更高的性能、更少的资源占用都使我们实在找不出不升级的理由。

对于开发WinForm的同学来说,暂时不用考虑升级到.Net Core平台,建议从11月发布的3.1开始升级,因为那个版本才是LTS(Long Term Support: 长期演进版)版本。

HwLib(慧兰博)技术团队专注于高端自动化技术,如果您对我们的技术教程感兴趣的话,可以X宝上搜索店铺“hwlib”或者“慧兰博”

关于HwLib(慧兰博)技术团队的更多信息:www.hwlib.com.cn

HwLib(慧兰博)技术团队技术资料:

https://pan.baidu.com/s/1t-5BPQmeUbWRVH9FJ-tjPg 

提取码:63rt

END

关于西门子下一代SCADA的猜想

自控工程师为什么要学习高级程序设计语言

TIA Portal V16.0安装说明

一张图了解HwLib(慧兰博)团队技术路线

HwLib(慧兰博)公众号

专注于工业自动化高端编程应用

HwLib(慧兰博)微信号

VS2019 windows桌面应用_基于.Net Core平台开发WinForms应用程序相关推荐

  1. python角谷猜想递归实现_全新.NET Core平台开发逆袭 重新认知.NET Core微服务架构视频教程 架构师级课程...

    全新.NET Core平台开发逆袭课程,将带领同学们重新认知.NET Core微服务架构,是真正的架构师级别的开放课程.课程为同学们打造了一个非常好的框架的起点,重点内容包括了容器环境下配置注入的最佳 ...

  2. VS2019 windows桌面应用_多邻国英语测试推出桌面应用程序,确保考试环境安全可靠...

    多邻国英语测试(Duolingo English Test)因为突破考位限制.快速.高性价比等优势,获得广大考生青睐. 近日,为了提供更佳.更稳定的考试体验,我们推出了「桌面应用程序」,帮助同学们在安 ...

  3. VS2019 windows桌面应用_使用NX1899/NX1907和VS2019进行二次开发环境搭建的过程

    最近开始录制NX CAM二次开发的教程,之前录制了很多建模和制图方面的开发功能,发现很多同行朋友还是在经常闻讯CAM方面的开发,介于此,想使用最新的NX1907版本,和VS2019进行二次开发的教程录 ...

  4. 基于 Tampermonkey 插件平台开发的淘宝直通车爬虫

    crawler-userscript 一个基于 Tampermonkey 插件平台开发的爬虫.主要目的是最大限度模拟用户环境,避免被反爬虫系统识破. 本项目除了实现了一个爬虫框架以外,还是一个完整的淘 ...

  5. 基于腾讯云开发微信小程序(新闻发布及共享平台)上

    基于腾讯云开发微信小程序(新闻发布及共享平台)上 文章目录 传统的微信小程序开发 一.云开发是什么? 二.使用步骤 1.创建云环境 2.云数据库的创建 3.云储存 4.云函数 总结 传统的小程序开发 ...

  6. 区块链毕业_基于.NET Core的在线音乐系统的设计与实现

    摘要 市场调研发现,移动互联网的高速发展和4G网络的全面普及,高速移动网络下提供单一功能的在线音乐服务已经无法满足用户日益增长的需求,侧重互动社交服务的音乐类平台的市场占有率.用户访问量和用户粘度等均 ...

  7. windows桌面应用_现代Windows 8应用与Windows桌面应用不同的7种方式

    windows桌面应用 Windows 8 apps – originally known as Metro-style apps and now known as Windows 8 style, ...

  8. abaqus python二次开发攻略_基于CAE二次开发进行弹簧批量建模

    一. 为什么要进行弹簧批量建模 当一个公司或者学者从事科研任务时,往往通过有限元进行建模分析,建模的时间通常与工作效率挂钩.例如ABAQUS/CAE建模,想必很多老用户都有某种共同的感受,那就是实体模 ...

  9. spring基于注释的配置_基于注释的Spring MVC Web应用程序入门

    spring基于注释的配置 这是使Maven启动Spring 3 MVC项目的最小方法. 首先创建spring-web-annotation/pom.xml文件,并包含Spring依赖项: <? ...

  10. java udp包_基于UDP协议的数据包收发程序(代码+报告)Java

    [实例简介] 设计要求: 1)按照UDP协议数据包发送方式实现用户端之间的通信. 2)统计包的发送和接收数,计算数据包的丢失数. 3)设计美观易用的图形界面. [实例截图] [核心代码] 基于UDP协 ...

最新文章

  1. IIS7 配置PHP服务器
  2. java参数传递(超经典)
  3. Spring AOP概念理解 (通俗易懂)【转】
  4. 【翻译】CodeMix使用教程(三):Emmet
  5. golang字符串类型及使用细节
  6. 【已完结!】Java基础--学习笔记(零起点打开java世界的大门)--博客汇总表【附:视频、工程源码、资料、详细笔记】
  7. BZOJ1008: [HNOI2008]越狱(组合数)
  8. [转载]FPGA/CPLD重要设计思想及工程应用(时序及同步设计)
  9. 学习 shell脚本之前的基础知识
  10. vins中imu融合_视觉和imu融合的算法研究
  11. 文件隐藏服务器版本信息吗,隐藏/屏蔽服务器信息与web软件版本信息
  12. 大学计算机四级报名,2016下半年安徽理工大学计算机四级报名
  13. Java Web 获取客户端真实IP
  14. 台式电脑计算机怎么打不开怎么回事,为什么电脑自带的软件打不开怎么办
  15. SQLSERVER月份简写转数字
  16. 面试逻辑题(English)
  17. vue 实现 tooltips的效果
  18. 【Linux入门指北】Linux实验综合训练
  19. noi题库1011. 正方形
  20. 基于javaspringboot+vue的汽车租赁管理系统含文档

热门文章

  1. win10系统对计算机要求,Win10系统对电脑配置要求 win10专业版教程
  2. 阿里开源共享:IDE导入阿里编码规约格式化模板和注释模板
  3. matlab中怎么计算信噪比,如何计算通信中的信噪比SNR
  4. Java基础知识点梳理
  5. t检验的p值对照表_第十讲 R-两独立样本t检验
  6. 简支梁挠度计算公式推导_挠度公式推导与计算
  7. VAX 经常Parsing 整个项目/CPU负载过高解决办法
  8. MySQL数据库如何启动?
  9. guice android,android – 如何使用Guice的@Singleton?
  10. noi2016试题C语言,noip2016普及组初赛试题和答案.pdf