visual studio odbc数据源设计器_NEW!WinForm界面开发设计时正式支持.NET 5

点击“了解更多”获取DevExpress v20.2完整版下载

早在今年7月,官方技术团队宣布对DevExpress控件进行功能增强,使其支持最新的.NET 5 Preview。 但是尽管技术团队一直在努力确保WinForms控件与.NET 5兼容但在Visual Studio中对设计器的支持却是另一回事。 现在.NET 5已与Visual Studio 2019 v16.8一起正式发布,现在该讨论如何使用DevExpress WinForms v20.2的设计时工具了。

尽管WinForms平台尚未完全解决重要的设计时问题,但Microsoft在考虑.NET 5的开发人员方面取得了较好的进展,例如,您可以调用控件的智能标记菜单...

77f73b7be3dbd7777de40db2121ef697.png

使用控件的设计器

ef1dc30fdeb529a230118127aef27810.png

并利用独立的设计器对话框来设置复杂的属性,例如技术团队最近全面修改的编辑器输入标记的Mask Settings对话框。

52cb9789516ed855e297910aabed5901.png

基本操作

为了开发一个新的WinForms应用程序,该应用程序以DevExpress控件为目标面向.NET 5,您应该执行以下操作:

1. 使用VS Installer中选中的“.NET Core development tools”选项来安装Visual Studio 2019 version 16.9 Preview 1。

2. 按照本帮助文章中的说明注册特殊的抢先体验NuGet feed:安装Visual Studio的NuGet Package Manager。通过单独的Feed分发.NET 5控件,Microsoft仍必须实施一些细节,这些细节对于完整设计时支持至关重要。

注意:目前,NuGet feed是获取针对.NET 5优化的最新DevExpress WinForms控件的唯一方法。通过Download Manager中提供的经典.NET Core安装程序分发的DevExpress WinForms v20.2控件,也可以在.NET Core下运行.NET 5,但缺乏设计时支持。

3. 在Visual Studio中,确保您的应用程序面向.NET 5.0。跳转到“Project | Manage NuGet Packages...”,选择您在步骤2中注册的Feed,然后安装具有所需本地化区域性的预发布软件包,每个软件包都包含所有可用的DevExpress WinForms控件。

5fa9d06ac998568179f2a7705daef5ab.png

4. 安装选定的程序包后,您可以从Visual Studio工具箱中添加DevExpress控件。

d4a153e6bb61613c6cad2b2820fc8500.png

已知问题

尽管上面提到的设计时功能似乎表明.NET 5已准备就绪且可用(实际上可用于Visual Studio中的基本WinForms控件),但标准WinForms设计器界面仍然存在重要的局限性/问题,这些问题意味着设计器目前尚不完全支持我们复杂的WinForms控件。当然,Microsoft将在未来的Visual Studio构建中增强这些接口,随后将提供DevExpress WinForms设计时支持。 目前,我们尚无有关何时准备好进行此类更改的指导,因此我们无法为用户提供确切的发布时间表。一些尚未为.NET 5提供最佳的设计时体验示例:

  • 接受自定义结构(例如DevExpress.Utils.Padding)作为值的属性可以显示在Visual Studio Properties面板中,但任何尝试编辑此类属性的操作都可能导致IDE崩溃。
  • Visual Studio Toolbox中显示的控件不支持图标。
  • 自定义字形无法在设计时渲染,针对常规.NET Framework的WinForms控件利用此类字形来指示绑定的UI元素,显示调用Data Source Configuration Wizard的按钮等。
  • 设计器不支持数据源和绑定,只能在代码中指定。
  • 不支持某些交互功能,例如拖动控件元素。
  • 托管WinForms Designer的进程容易挂起。
  • 在性能方面还存在其他一些问题。

DevExpress是最早发布商业WinForms UI控件的组件供应商,多年来为复杂的WinForms UI控件创建了一些非常复杂的设计器。 我们将资源集中在设计时体验上,出色的设计时经验可提高生产率并降低开发成本。

在WinForms的设计时经验并不取决于Visual Studio的标准设计器界面,因此要为.NET 5提供与在早期版本的.NET Framework中相同的设计时体验,将需要艰巨的尝试:

  • 为单个控件元素(网格列,图块等)添加智能标签菜单。
  • 创建自定义向导,例如模板库、数据源配置向导、Scaffolding向导等。
  • 扩展的智能标签。
  • 处理不允许您创建事件处理程序的设计器对话框。
  • 找出解决缺少的Visual Studio查找面板属性的方法。
  • 解决DevExpress编辑器的类型转换问题。
  • 找出如何处理非操作助手组件。

最后,还有一些功能和控件在当前版本中不可用:XPO, reporting和XtraDialogs,这些功能缺失的原因与主要的技术困难无关,将在以后的DevExpress版本中解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/346356.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 接口的观察者模式_java观察者模式

观察者模式又叫做发布-订阅(Publish/Subscribe)模式。观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自己更新自己。Observer结构图.pngSubj…

java 构建者模式_Java方法中的参数太多,第3部分:构建器模式

java 构建者模式在我的前两篇文章中,我研究了如何通过自定义类型和参数对象减少构造函数或方法调用所需的参数数量。 在本文中,我将讨论如何使用构建器模式来减少构造器所需的参数数量,并讨论该模式如何甚至可以帮助采用过多参数的非构造器方…

webgis从基础到开发实践_ArcGIS API For Javascript 开发笔记(四)

二、应用篇1、应用部署部署也就意味着一个 DEMO 或者系统即将完工,也意味着系统即将上线,相对来说Javascript 应用的部署不是很复杂,但是这是有前提的,要对部署中的一些概念有所了解,比如部署中常常提到的虚拟目录&…

Spock 1.2 –轻松进行集成测试中的Spring Bean模拟

探索如何使用Spock 1.2将Spock的模拟和间谍自动注入到Spring上下文中。 Spock中的存根/模拟/间谍(及其生命周期)一直与Spock Specification类紧密结合。 只能在测试类中创建它们。 因此,使用共享的预定义模拟(在单元测试和集成测…

geteditor p 取消自动_2020百度网盘超级会员怎么取消自动续费?

首先我们打开百度网盘,开通超级会员以后,可以看到个人中心有一个管理自动续费的,点击打开。2然后可以看到自己开通的界面旁边显示的有一个取消按钮。3点击取消以后,会提示我们自动续费享受的有优惠,我们继续点击确认取…

java堆和客栈_java中堆和栈的区别分析

堆和栈是java数据结构里非常重要的概念,本文较为详细的分析了二者之间的区别。供大家参考。具体如下:Java的堆是一个运行时数据区,类的(对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarr栈的优势是,存取速度比堆要快&a…

php odbc驱动,用于Windows的PHP 7.0 ODBC驱动程序

我将PHP 5.6.30(https://www.apachefriends.org/de/download.html)升级到PHP 7.0(https://bitnami.com/stack/wamp/installer)到目前为止,一切都运行良好,当我使用MySQL数据库时,它将我的页面的加载时间从1,2秒减少到约300毫秒.但是现在我正在尝试使用以下简单脚本连接到MSSQL数…

分布式机器学习_229页,CMU博士张昊毕业论文公布,探索机器学习并行化的奥秘...

CMU 机器人研究所张昊(Hao Zhang)博士论文新鲜出炉,主要围绕着机器学习并行化的自适应、可组合与自动化问题展开。机器之心报道,机器之心编辑部。随着近年来,机器学习领域的创新不断加速,SysML 的研究者已经…

利用Excel或LibreOffice的业务输入进行单元测试约束

业务专家向我们(开发人员)解释业务限制。 但是,如何确保我们正确理解它们呢? 或更糟糕的是,一旦约束条件正式化,我们如何测试他们之间是否同意? 好吧,有一种很棒的方法可以做到这一…

Java播放歌词同步源码,Android 实现歌词同步

歌词同步的原理其实很简单:歌词显示是一个线程, 音乐播放时一个线程,通过播放时间将歌词显示进度与播放进度同步起来。网络标准的歌词格式是LRC。 我们看下一个LRC文档,其格式就一目了然了。[ti:爱][ar:小虎…

矩阵连乘 动态规划_Java动态规划

1. 介绍动态规划典型的被用于优化递归算法,因为它们倾向于以指数的方式进行扩展。动态规划主要思想是将复杂问题(带有许多递归调用)分解为更小的子问题,然后将它们保存到内存中,这样我们就不必在每次使用它们时重新计算它们。要理解动态规划的…

c php乱码,php分割GBK中文乱码的解决方法

类似如下的字符串(GBK), explode不能得到正确结果:$result explode("|", "滕华弢|海青");究其原因, 对于”弢”字(读tao,不认识没关系,我也不认识), 因为他的GBK编码值为: 8f7c, 不巧的是, “|”的ASCII值也是7c.还有一些类似的问题: 因为GBK编码的编码范…

分布式光伏补贴_光伏发电上网电价政策综述

原标题:光伏发电上网电价政策综述近些年,光伏发电上网电价相关政策不断推陈出新,在推进平价上网的同时,也积极对接了电力市场建设需要。本文梳理了光伏发电上网电价及补贴标准有关政策,供参考使用:1.普通光…

怎么简单的锁定文件夹_简单性与鲁棒性–在锁定文件处理中展示

怎么简单的锁定文件夹今天,我们将讨论使事情保持简单,愚蠢(KISS)和鲁棒性的设计价值之间,设计不足和过度设计之间的冲突。 我们正在编写一个批处理Java应用程序,需要确保在服务器上一次最多运行一个实例。…

php strlen 线程安全,浅析PHP中strlen和mb_strlen的区别

在PHP中,strlen与mb_strlen是求字符串长度的函数,但是对于一些初学者来说,如果不看手册,也许不太清楚其中的区别。下面通过例子,讲解这两者之间的区别。先看例子://测试时文件的编码方式要是UTF8$str中文a字…

单片机float数发给上位机_上位机倒计时器

1. 设置窗口在VS2019新建一个Windows窗体应用(.NET Framework)项目,新建之后出现一个可视化页面(From1.cs[设计])设置窗口。在左侧的工具箱里面拉拽控件到操作面板上,按照自己的喜好摆放位置和调大小。这里要注意的是用到的分别是什么控件:文…

JDK语言功能预览:切换表达式

JEP 12 [“预览语言和VM功能”]在其主页上描述如下: 预览语言或VM功能是Java SE平台的一项新功能,该功能已完全指定,完全实现但不是永久性的。 JDK功能发布中提供了该功能,以根据实际使用情况激发开发人员反馈。 这可能会导致它在…

python快速示例_Python编程入门-基本示例,快速,上,手,基础

环境配置安装Python,目前最新的是3.9(不支持Windows7),我装的3.7https://www.python.org/downloads/安装向导里勾选自动添加路径,装完就可以用,Windows10/7搜索框输入IDLE,进入交互式环境窗口,输入语句后&a…

php 距离排序,php 附近由近到远排序查询

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼//获取经纬度 默认值为0.5千米function returnSquarePoint($lng, $lat, $distance 0.5){define(EARTH_RADIUS, 6371); //地球半径,平均半径为6371km$dlng 2 * asin(sin($distance / (2 * EARTH_RADIUS)) / cos(deg2ra…

土地利用覆被变化的概念_欠压实概念极其荒谬

●李传亮地表疏松的沉积物,孔隙度极高,有时可高达80%以上,但随着埋藏深度的加大,在上覆压力的作用下,其排列方式不断由松散排列趋于致密排列,同时伴随有孔隙度的大幅度减小,此即岩石的压实阶段&…