.net core WinFrom桌面应用程序 初体验

1..net Core 创建WinFrom桌面应用程序

前提是安装好.netCore开发环境,以及最新的.netCore3.0以上

使用命令创建,打开CMD,输入:dotnet new winform -o TestWFCore

.net core WinFrom桌面应用程序 初体验_第1张图片

上述代码会创建一个名为TestWFCore的新项目。该项目位于c:\ Users(YourAccount)下

然后把这个项目拷贝出来,放到自己想放的目录下就行,最后使用Visual Studio 2019 打开即可,但是打开如下如图所示:

 

.net core WinFrom桌面应用程序 初体验_第2张图片

.net core WinFrom桌面应用程序 初体验_第3张图片

窗体设计器不可用,但是可以正常生成和运行。继续往下看

2..net Core窗体可视化设计器

下面是这个项目的csproj文件内容

.net core WinFrom桌面应用程序 初体验_第4张图片

把csproj的内容全部替换为下面代码:



  
    WinExe
    net472;netcoreapp3.0
    true
    7.3
    true
  
  
    
    
    
    
    
    
    
    
    
    
    
  
  
    
    
      Form
    
  

保存csproj文件,然后如vs有提示重新加载,就全部从新加载,要不然就关闭VS重新打开项目,就如下所示:

.net core WinFrom桌面应用程序 初体验_第5张图片

这样修改后,项目的属性中目标框架就变为了只读状态

.net core WinFrom桌面应用程序 初体验_第6张图片

因为设置了两个目标:

.net core WinFrom桌面应用程序 初体验_第7张图片

最终这样在生成项目的时候在debug目下会有两个目录:

.net core WinFrom桌面应用程序 初体验_第8张图片

netcoreapp3.0下的文件就是我们需要的可运行的所有文件。

说明:

  • 这是目前的临时解决方案,官方后续会肯定会在.netCore项目了里面支持可视化窗体设计的,而且创建项目应该也会有相应的模版。
  • 目前使用.net core开发的winform桌面应用程序也只能在windows系统上面运行,至于以后怎么在Mac或者Linux下运行官方暂时还么有进一步发表,但是可以肯定的是以后winform肯定能跨平台的。

3.移植.net framework桌面应用程序到.net Core

可以下载:.NET可移植性分析器这个visual studio扩展,用来分析你的.net framework项目是否适合移植到.netCore:

.net core WinFrom桌面应用程序 初体验_第9张图片

然后根据官方教程来吧,官方教程比较详细:将 Windows 窗体桌面应用程序移植到 .NET Core
我这里按个人理解总结一下吧,主要步骤是:

  • 创建一个空目录与需要移植的项目放在同一个目录下
  • 然后在空目录下只需要创建一个.net core的 csporj文件
  • 然后在把以前的项目关联到现在这个csporj文件上,这样以前那个项目的csporj文件可以正常打开设计窗体,从新的.sln文件打开项目(新的csporj文件)就能使用.net core 的特性
  • 最终效果是如果把两个项目同时打开,可以看到两边的代码是一样的,而两个项目使用的框架是不同的,一个是framewrok,一个是.netcore,因为代码文件都是同一个嘛,只是指定了不同的框架,但是移植后新写的.netcore的一些代码特性,原来的项目打开的话会有很多漂红的,不能用的,而且在新项目下面新建的cs文件,会在新项目的目录下(原framewrok项目的文件还是在之它自己的目录下),如下图:

.net core WinFrom桌面应用程序 初体验_第10张图片

这样的话只是对窗体的界面的调整设计比较方便。

移植后的项目是没有窗体的可视化设计界面的,但是我也从移植后的项目中引用了.net core 的一些nuget包,然后成功的运行并从服务器上获取了数据:

.net core WinFrom桌面应用程序 初体验_第11张图片

以上所有内容就是现阶段体验的情况,有一些东西也是东查一点资料西找一点,最终综合为自己所用了。

你可能感兴趣的:(技术)