高性能图表控件LightningChart HighDPI PC中的FormSizeChange问题解答

本文主要是介绍高性能图表控件LightningChart HighDPI PC中的FormSizeChange问题解答,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学,工程,医学,航空,贸易,能源和其他领域的体绘制功能。

点击下载LightningChart.NET最新试用版

问题:HighDPI PC中的FormSizeChange

我认为Chart可以在HighDPI PC中更改FormSize。
它没有出现在我的台式机上。
为什么会发生?
而且,如何解决?

1.表格已加载,尚未创建图表。
(后退屏幕是Excel)

在这里插入图片描述

  1. Button1Clicked,创建图表并在面板中添加。
    FormSize缩小,并且位置已更改。

在这里插入图片描述

  1. Button2Clicked,图表在面板中被清除。

FormSize和Location变为正常。

在这里插入图片描述

  1. Button1再次单击,将创建图表并在面板中添加。

但是FormSize和Location仍然是正常的。

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var lChart = new Arction.WinForms.Charting.LightningChartUltimate();
this.splitContainer1.Panel1.Controls.Add(lChart);
}
private void button2_Click(object sender, EventArgs e)
{
this.splitContainer1.Panel1.Controls.Clear();
}
}

规格

我的台式PC
操作系统:Win7 64位
显示尺寸:23inch
分辨率:1920 * 1080
DPI 96像素/英寸

HighDPI PC
操作系统:Win10 64位
显示尺寸:13.3inch
分辨率:1920 * 1080
DPI 166pixel / inch

回答

:该行为确实与DPI系统有关。在Windows中,关于DPI设置的处理,应用程序可以处于3种不同的状态之一。它们可以是不意识的,系统意识的,每个监视器意识的,或者可能没有定义意识(第四种选择)。

如果未在代码,应用程序清单或其他某种方式中定义WinForms应用程序对DPI的意识,则默认情况下该应用程序为不知觉,而DIP-PX无论Windows中定义了什么DPI设置,(设备独立像素/屏幕像素)系数都是1。创建LightningChart时,它会加载一些WPF库,因此,该应用程序的DPI感知将自动更改为WPF默认值(系统感知),并且DIP-PX因子将更改为Windows设置所定义的因子。删除图表后,DPI感知将恢复为原始。

若要解决此问题,您必须手动定义应用程序的DPI意识,以便WPF库默认设置不会影响程序。请注意,不必将DPI意识定义为“系统意识”或“每个监视器意识”,但也可以将其强制为不知道保留默认的WinForms功能。

设置DPI意识的最简单方法可能是通过修改(或添加)应用程序清单并将dpiAware设置为希望的值,如以下部分示例中所示。

<?xml version="1.0" encoding="utf-8"?>
<asmv1:assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" a xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
<asmv3:application><asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings"><dpiAware>true/pm</dpiAware></asmv3:windowsSettings></asmv3:application>
</asmv1:assembly>

这篇关于高性能图表控件LightningChart HighDPI PC中的FormSizeChange问题解答的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/197238

相关文章

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

WinForms中主要控件的详细使用教程

《WinForms中主要控件的详细使用教程》WinForms(WindowsForms)是Microsoft提供的用于构建Windows桌面应用程序的框架,它提供了丰富的控件集合,可以满足各种UI设计... 目录一、基础控件1. Button (按钮)2. Label (标签)3. TextBox (文本框

使用Vue-ECharts实现数据可视化图表功能

《使用Vue-ECharts实现数据可视化图表功能》在前端开发中,经常会遇到需要展示数据可视化的需求,比如柱状图、折线图、饼图等,这类需求不仅要求我们准确地将数据呈现出来,还需要兼顾美观与交互体验,所... 目录前言为什么选择 vue-ECharts?1. 基于 ECharts,功能强大2. 更符合 Vue

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

C#实现高性能Excel百万数据导出优化实战指南

《C#实现高性能Excel百万数据导出优化实战指南》在日常工作中,Excel数据导出是一个常见的需求,然而,当数据量较大时,性能和内存问题往往会成为限制导出效率的瓶颈,下面我们看看C#如何结合EPPl... 目录一、技术方案核心对比二、各方案选型建议三、性能对比数据四、核心代码实现1. MiniExcel

Qt中QGroupBox控件的实现

《Qt中QGroupBox控件的实现》QGroupBox是Qt框架中一个非常有用的控件,它主要用于组织和管理一组相关的控件,本文主要介绍了Qt中QGroupBox控件的实现,具有一定的参考价值,感兴趣... 目录引言一、基本属性二、常用方法2.1 构造函数 2.2 设置标题2.3 设置复选框模式2.4 是否

Qt中QUndoView控件的具体使用

《Qt中QUndoView控件的具体使用》QUndoView是Qt框架中用于可视化显示QUndoStack内容的控件,本文主要介绍了Qt中QUndoView控件的具体使用,具有一定的参考价值,感兴趣的... 目录引言一、QUndoView 的用途二、工作原理三、 如何与 QUnDOStack 配合使用四、自

Python如何在Word中生成多种不同类型的图表

《Python如何在Word中生成多种不同类型的图表》Word文档中插入图表不仅能直观呈现数据,还能提升文档的可读性和专业性,本文将介绍如何使用Python在Word文档中创建和自定义各种图表,需要的... 目录在Word中创建柱形图在Word中创建条形图在Word中创建折线图在Word中创建饼图在Word

Java实战之利用POI生成Excel图表

《Java实战之利用POI生成Excel图表》ApachePOI是Java生态中处理Office文档的核心工具,这篇文章主要为大家详细介绍了如何在Excel中创建折线图,柱状图,饼图等常见图表,需要的... 目录一、环境配置与依赖管理二、数据源准备与工作表构建三、图表生成核心步骤1. 折线图(Line Ch

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ