文章

C# Windows 窗体中的免费图表库和 GPU 加速

很多图表绘制库都可以在Visual Studio 2022软件的Nuget包管理器中找到,但是如果你访问实际的开发公司网站,你可能会发现如果免费使用或者公司有授权的话,功能上会有限制。付费政策,如果您使用它,则需要付费。作为替代方案,我想介绍一下微软官方支持的图表库和其他免费提供的图表库。

`Visual Studio 2022 > 管理 Nuget 包 ...` - 可以下载许多图表库,但它们是付费的或有功能限制。 Visual Studio 2022 > 管理 Nuget 包 ... - 可以下载许多图表库,但它们是付费的或有功能限制。

微软图表

微软提供的图表控件具有以下特点。

  • 图表控件不能在 WPF 和一般 Windows 窗体应用程序项目中使用。
  • 图表控件可以在 Windows 窗体应用程序项目中使用,但该项目必须使用.NET Framework创建。
  • 当然,由于是Windows Forms App项目,绘图操作时不能使用GPU加速。

.NET 框架 VS .NET
最初,微软主要支持.NET Framework用于Windows支持和.NET Core用于跨平台,但在2020年,.NET Framework 4.8.1是最后一个版本,并将.NET Framework和.NET Core集成到一个名为.NET的新系统中.我是按名字申请的。截至 2024 年,.NET 8.0 版本是最新的。

创建项目时,选择Windows Forms App (.NET Framework)

Visual Studio 2022 - 创建项目 Visual Studio 2022 - 创建项目

并在Framework中选择.NET Framework 4.8。版本 4.8 是 .NET Framework 的最后一个版本。

Visual Studio 2022 - 选择 .NET Framework 4.8 Visual Studio 2022 - 选择 .NET Framework 4.8

如果项目已成功创建,您可以看到表单设计器数据部分中提供了图表控件。

Visual Studio 2022 - 表单设计器 Visual Studio 2022 - 表单设计器

使用 GPU 加速 - SharpDX

默认情况下,GPU 加速在 Windows 窗体应用程序中不可用。但是,使用 SharpDX 库,您可以通过 DirectX 使用 GPU 加速。

参考下面的博客文章,这似乎并不简单,因为 Windows 窗体应用程序需要额外的处理,而 GPU 加速在 WPF 中默认可用。我将编写并分享一个类,以便在使用 Microsoft Charts 时轻松使用 GPU。

  • https://luckygg.tistory.com/389

本文由作者按照 CC BY 4.0 进行授权