wpf 后台如何设置table看不见_WPF和WinForms将在.NET Core 3上运行

如果您还没有机会探索.NET Core 3的新功能,请与框架中的专家一起阅读,以了解它带来的内容。

也许你已经听说过或读过微软将WinForms和WPF带到.NET Core 3.0这一事实。也许你已经看过Connect会议上的演示文稿,或者当Scott Hanselman展示如何在.NET Core上运行一个非常古老的WPF应用程序时的任何其他会议或录制。我看了一个演示,他在.NET Core上运行 BabySmash。

7cf1a0c962a6d7029716e06c808870e2.png

.NET Core上的WPF和WinForms?

我真的很想知道这一步,即使是因为我在几个月前为德国.NET杂志撰写了一篇文章,我提到微软不会为.NET Core构建一个UI堆栈。社区还构建了一些其他UI堆栈。最受欢迎的是Avalonia。

但无论如何,这一步是有道理的。由于.NET标准将.NET Core的API更多地移动到.NET框架的同一级别,因此使API几乎相等只是一个时间问题。WPF和WinForms基于.NET库,因此它应该在.NET Core上运行。

这是否意味着它在Linux和Mac上运行?

不!由于WinForms和WPF在后台仅使用Windows技术,因此无法在Linux或Mac上运行。它真的依赖于Windows。在.NET Core上运行它的意义在于性能并且独立于任何框架。.NET Core针对性能进行了优化,因此您可以在云中运行超快的Web应用程序。.NET Core也独立于计算机上安装的框架。只需将运行时与应用程序一起部署即可。

您现在可以运行快速且独立的Windows桌面应用程序。那真棒,不是吗!?

.NET CLI

每次我安装新版本的.NET Core运行时,我都会尝试,dotnet new而且我对这次看到的内容感到非常震惊:

3a2f449c26909fad71efc225d365eb3c.png

您现在可以使用.NET CLI创建Windows窗体或WPF应用程序。这很酷。我肯定需要尝试一下:

dotnet new -n WpfTest -o WpfTest dotnet new -n WpfTest -o WpfTest

是的,它正如您在Visual Studio代码中看到的那样工作:

fab779038a6375b8b34b7f0003b74fa1.png

这是VS Code中的WinForms项目

ca529d94b60a37eff57753e2b9ce2ff0.png

dotnet run

在WPF项目上运行:

be5bad5977ba232f4cad90dd1d9782c7.png

再次在WinForms GUI上:

3be4a59c4952e2bd9a64b8bfb1824005.png

IDE

Visual Studio Code不是此类项目的正确编辑器。如果你很了解XAML,它会工作,但WinForms肯定不会很好。您需要手动编写设计器代码,并且还没有任何设计器支持。也许未来会有一些,但我不确定。

在.NET Core上使用WinForms和WPF的最佳选择是Visual Studio 2017或更新版本。

最后的话

我不认为我现在会开始在.NET Core 3上编写桌面应用程序,因为我是一个网络人。但是在.NET Core上构建这样的应用程序是一个非常好的选择。

顺便说一下:即使EF 6也可以在.NET Core 3中运行,这意味着您也不需要重写桌面应用程序的数据库访问部分。

正如我所写,您现在可以使用这个超快速框架和创建自包含应用程序的选项。我建议你尝试一下并玩弄它。你有一个基于WPF或WinForms的旧桌面应用程序吗?我很想知道你是否可以在.NET Core 3上运行它。告诉我让它在.NET Core 3上运行是多么容易。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值