本文由微信公众号《开发者精选资讯》翻译首发,转载请注明来源

今天我们很高兴地宣布,.NET Core项目的Windows窗体设计器现在可以在 Visual Studio 2019 16.6 版中作为预览使用!我们在Visual Studio 16.7 预览版1中也提供了更新的设计器版本!

不要忘记在“工具” > “选项” > “环境” > “预览功能”中启用设计器 。

许多人可能还记得我们在 开源Windows窗体 并将其移植到.NET Core 3.0的.NET Core中。从那时起,我们一直 在努力 将Windows 窗体设计器的引入.NET Core。当我们接近完成时,我们继续设计器开发,并计划在不久的将来带来更多的功能和性能改进。

如何使用窗体设计器

安装 Visual Studio 2019版本16.6 或 Visual Studio 2019版本16.7预览版1。

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

完成这些步骤后,在解决方案资源管理器中双击窗体后,设计器将自动以与.NET Framework应用程序相同的方式打开。

完成功能工作后,提高性能是我们的下一个目标,因此,如果设计者预览时的速度不如您想象的那么快,请不要感到烦恼,这是我们将来会改进的。

当前,新的Windows窗体设计器仅在Windows 10上有效。

设计器中可用的功能

  • 除了 DataGridView 和 ToolStripContainer 之外的所有Windows窗体控件(即将推出)

  • UserControl和自定义控件基础结构(仅Visual Studio 16.7 Preview 1版本可用)

  • 所有设计器功能,例如

    · 拖放

    · 选择,移动和调整大小

    · 剪切/复制/粘贴/删除

    · 与属性窗口集成

    · 事件生成等

  • 新增 WebView2 控件

    基于chromium的嵌入式浏览器控件,允许呈现.NET应用程序的Web内容(HTML / CSS / JavaScript)。Windows窗体和WPF应用程序的.NET Core和.NET Framework平台均支持。您可以 在Microsoft入门指南文档中找到,我们将在不久的将来发布专门针对WebView2控件的博客文章。

  • 本地资源

  • 对本地化的部分支持

    · 控件和UserControl的可本地化属性可以序列化为Resx文件(通过将Localizable 属性设置 为 true)。

    · 通过更改Language 属性支持不同的语言。

    · 根据Unicode标准国际组件(ICU)在.NET 5的预览中添加了其他功能。

接下来会发生什么

  • 项目资源
  • 完全本地化
  • 可继承的对话框支持
  • 数据绑定方案

    这项工作正在进行中,您已经可以在Visual Studio 16.7 Preview 1设计器中看到这些结果。
  • 第三方控件供应商支持

    我们正在与Progress Telerik,DevExpress和GrapeCity等控件供应商紧密合作,以在不久的将来为.NET Core和.NET 5项目在Windows Forms设计器中支持其控件。我们还与ActiPro,Infragistics和SyncFusion合作。在下图上,您可以看到Windows窗体应用程序中针对.NET 5的Progress Telerik控件。

16.6 GA版本中的新功能

在16.6版本中,进行了以下控件支持和改进。

  • 所有对话框控件
  • PropertyGrid
  • HScrollBar
  • VScrollBar
  • DomainUpDown
  • TrackBar
  • 拖放改进
  • 选中改进
  • 稳定性和错误修复

16.7 Preview 1版本中的新功能

在 16.7 Preview 1发行版中进行了以下控件支持和改进。

  • UserControl 和自定义控件基础结构
  • TableLayoutPanel
  • 第三方控件支持基础
  • 数据绑定支持基础
  • 使用 TableLayoutPanel 改进的设计器

给我们提交反馈

您的反馈意见对我们很重要!请报告问题并通过Visual Studio反馈通道发送功能请求。如下图所示,使用Visual Studio右上角的“发送反馈”图标,并指定它与“ WinForms .NET Core”区域。

关注微信公众号《开发者精选资讯》

[翻译]用于.NET Core的Windows窗体设计器发布的更多相关文章

  1. 在.NET Core 3.0 Preview上使用Windows窗体设计器

    支持使用基于Windows窗体应用程序的.NET Core 3.0(预览)的Windows窗体设计器 介绍 截至撰写本文时,Microsoft和社区目前正在测试.NET Core 3.0.如果您在.N ...

  2. Windows 窗体设计器(Windows Forms Designer)入门

      Visual Studio 2010 更新:2010 年 9 月 Windows 窗体设计器提供多个用于生成 Windows 窗体应用程序的工具. 本演练阐释如何使用设计器提供的各种工具生成应用程 ...

  3. Windows 窗体设计器生成的代码

    namespace 窗体的浮动及隐藏{    partial class Form1    {        /// <summary>        /// 必需的设计器变量.      ...

  4. Windows 窗体设计器中的设计时错误

    当修改窗体里面某一项时导致窗体报错,但是编译运行没问题,报"依赖项问题"则只需要把报错的那个依赖项删除后再重新引用.

  5. 通过用 .NET 生成自定义窗体设计器来定制应用程序

    通过用 .NET 生成自定义窗体设计器来定制应用程序 https://www.microsoft.com/china/MSDN/library/netFramework/netframework/Cu ...

  6. C#用DesignSurface实现一个简单的窗体设计器

    System.ComponentModel.Design.DesignSurface是为设计组件提供一个用户界面,通过它可以实现一个简单的窗体设计器. 在构建之前,我们需要引入System.Desig ...

  7. 解析大型.NET ERP系统核心组件 查询设计器 报表设计器 窗体设计器 工作流设计器 任务计划设计器

    企业管理软件包含一些公共的组件,这些基础的组件在每个新项目立项阶段就必须考虑.核心的稳定不变功能,方便系统开发与维护,也为系统二次开发提供了诸多便利.比如通用权限管理系统,通用附件管理,通用查询等组件 ...

  8. C#基础系列:开发自己的窗体设计器(PropertyGrid显示中文属性名)

    既然是一个窗体设计器,那就应该能够设置控件的属性,设置属性最好的当然是PropertyGrid了,我们仅仅需要使用一个PropertyGrid.SelectedObject = Control就可以搞 ...

  9. WinForm编程时窗体设计器中ComboBox控件大小的设置

    问题描述: 在VS中的窗体设计器中拖放一个ComboBox控件后想调整控件的大小.发现在控件上用鼠标只能拖动宽度(Width)无法拖动(Height). 解决过程: 1.控件无法拖动,就在属性窗口中设 ...

随机推荐

  1. Springboot以Tomcat为容器实现http重定向到https的两种方式

    1 简介 本文将介绍在Springboot中如何通过代码实现Http到Https的重定向,本文仅讲解Tomcat作为容器的情况,其它容器将在以后一一道来. 建议阅读之前的相关文章: (1) Sprin ...

  2. 基于口令的密码(PBE)

    基于口令的密码(PBE) 基于口令的密码(Password Based Encryption,PBE)是一种基于口令生成密钥,并使用该密钥进行加密的方法.其中加密和解密使用的是同一个密钥. 根据用户自 ...

  3. 在java中使用JMH(Java Microbenchmark Harness)做性能测试

    文章目录 使用JMH做性能测试 BenchmarkMode Fork和Warmup State和Scope 在java中使用JMH(Java Microbenchmark Harness)做性能测试 ...

  4. Spring Boot Starters介绍

    文章目录 Web Start Test Starter Data JPA Starter Mail Starter 结论 对于任何一个复杂项目来说,依赖关系都是一个非常需要注意和消息的方面,虽然重要, ...

  5. dockerfile简介及书写规则

                                       Dockerfile 简介 Dockfile是一种被Docker程序解释的脚本, Dockerfile由一条一条的指令组成,每条指 ...

  6. 编程语言50年来的变化,我用50种编程语言告诉你“Hello world”怎么写!

    当我们学习一门新的语言时,"Hello, World!"通常是我们所写的第一个程序. 因此,所有程序员在职业生涯中至少完成了"Hello, World!"程序员 ...

  7. python selenium(定位方法)

    一.定位方法 注意:元素属性必须唯一存在 #id定位 find_element_by_id() #name定位 find_element_by_name() #class_name定位 find_el ...

  8. 一只简单的网络爬虫(基于linux C/C++)————线程相关

    爬虫里面采用了多线程的方式处理多个任务,以便支持并发的处理,把主函数那边算一个线程的话,加上一个DNS解析的线程,以及我们可以设置的max_job_num值,最多使用了1+1+max_job_num个 ...

  9. 安卓commandlinetools-win-6200805_latest配置

    JDK:1.8.0_251 系统:win10 64bit 问题1 官网下载commandlinetools,解压运行报错 解决方法 打开sdkmanager.bat,修改第17行为set DEFAUL ...

  10. Java——Java自动装箱和拆箱

    一.什么是自动装箱和拆箱: 我们知道java为8种基本类型分别提供了对应的包装类型,在Java SE5之前,如果要生成一个数值为10的Integer对象,必须这样进行: Integer i=new I ...