首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Windows 10上更改DPI会使WPF应用程序变得模糊(实时)

在Windows 10上更改DPI(显示比例)可能会导致WPF(Windows Presentation Foundation)应用程序变得模糊。这是因为WPF应用程序使用设备无关像素(DIP)作为其渲染单位,而不是像素。当更改DPI时,操作系统会对应用程序进行缩放,以使其在高DPI显示器上显示得更清晰。然而,这种缩放可能会导致WPF应用程序的图像和文本变得模糊。

为了解决这个问题,可以在应用程序的配置文件中添加一个启动参数,以告诉操作系统不要对应用程序进行缩放。具体步骤如下:

  1. 打开应用程序的配置文件(通常是一个名为App.config的文件)。
  2. 在配置文件中找到<System.Windows.Forms.ApplicationConfigurationSection>节点。
  3. 在该节点下添加以下代码:
代码语言:txt
复制
<add key="EnableWindowsFormsHighDpiAutoResizing" value="false" />

这将禁用WPF应用程序的自动缩放功能,使其在更改DPI时保持清晰度。请注意,这可能会导致应用程序在高DPI显示器上变得较小,因为它不再进行缩放。

对于WPF应用程序的开发和优化,可以使用以下相关技术和工具:

  1. 前端开发:WPF使用XAML(可扩展应用程序标记语言)来定义应用程序的用户界面。可以使用Visual Studio进行WPF应用程序的前端开发。
  2. 后端开发:WPF应用程序可以使用C#或VB.NET等编程语言进行后端开发。可以使用Visual Studio进行后端代码的编写和调试。
  3. 软件测试:可以使用Visual Studio的测试工具进行WPF应用程序的单元测试、集成测试和UI测试。
  4. 数据库:WPF应用程序可以使用各种数据库进行数据存储和管理,如SQL Server、MySQL等。
  5. 服务器运维:WPF应用程序通常在客户端上运行,不需要服务器运维。
  6. 云原生:WPF应用程序可以通过容器化技术(如Docker)进行云原生部署和管理。
  7. 网络通信:WPF应用程序可以使用各种网络通信协议进行与服务器或其他应用程序的通信,如HTTP、TCP/IP等。
  8. 网络安全:WPF应用程序可以使用各种网络安全技术来保护数据传输和用户隐私,如SSL/TLS、加密算法等。
  9. 音视频:WPF应用程序可以使用MediaElement控件来播放音视频文件。
  10. 多媒体处理:WPF提供了丰富的多媒体处理功能,如图像处理、音频处理等。
  11. 人工智能:WPF应用程序可以集成人工智能算法和模型,实现图像识别、语音识别等功能。
  12. 物联网:WPF应用程序可以与物联网设备进行通信和数据交互,实现智能家居、智能工厂等场景。
  13. 移动开发:WPF应用程序通常是针对桌面平台的,如果需要在移动设备上运行,可以考虑使用其他技术和框架,如Xamarin。
  14. 存储:WPF应用程序可以使用本地文件系统或数据库进行数据存储和管理。
  15. 区块链:WPF应用程序可以与区块链网络进行交互,实现去中心化应用程序的功能。
  16. 元宇宙:WPF应用程序可以通过与虚拟现实(VR)或增强现实(AR)技术的集成,实现与虚拟世界的交互和体验。

对于WPF应用程序开发和部署,腾讯云提供了一系列相关产品和服务,包括:

  1. 腾讯云服务器(CVM):提供可靠的云服务器实例,用于托管和运行WPF应用程序。
  2. 腾讯云数据库(TencentDB):提供高性能、可扩展的数据库服务,用于存储和管理WPF应用程序的数据。
  3. 腾讯云容器服务(TKE):提供基于Kubernetes的容器化部署和管理服务,用于实现WPF应用程序的云原生部署。
  4. 腾讯云CDN(Content Delivery Network):提供全球加速的内容分发网络,用于加速WPF应用程序的静态资源传输。
  5. 腾讯云API网关(API Gateway):提供灵活、可扩展的API管理和发布服务,用于构建和管理WPF应用程序的API接口。
  6. 腾讯云人工智能(AI):提供丰富的人工智能服务和工具,用于实现WPF应用程序的智能化功能。
  7. 腾讯云物联网(IoT):提供全面的物联网平台和解决方案,用于实现WPF应用程序与物联网设备的连接和管理。
  8. 腾讯云移动开发(Mobile Development):提供移动应用开发的云服务和工具,用于构建和发布WPF应用程序的移动版本。
  9. 腾讯云存储(COS):提供安全、可靠的对象存储服务,用于存储和管理WPF应用程序的文件和数据。
  10. 腾讯云区块链(Blockchain):提供高性能、可扩展的区块链服务,用于实现WPF应用程序与区块链网络的交互。

以上是关于在Windows 10上更改DPI会使WPF应用程序变得模糊的问题的完善和全面的答案。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Windows 10 WPF 窗口添加模糊特效(就像开始菜单和操作中心那样)

Windows 10 WPF 窗口添加模糊特效(就像开始菜单和操作中心那样) 发布于 2017-10-01 16:14...本文提供了一个完整的用于 Windows 10 实现模糊特效的 C# 类,没有放到 GitHub 也没有其他类型的开源。如果需要直接拿走就好。 ---- ? ? 为什么不推荐使用?...于是微软只好砍掉了背景高斯模糊功能……充满遗憾……被世人唾骂…… 忍受不了世人的咒骂,微软只好再把高斯模糊效果带回 Windows 10。...这效果是 DWM 进程运行的(与 Aero 特效一样),所以也不会额外占用应用程序本身的计算资源。 然而,本文探究的方法并不是 Fluent Design System 中的任何部分。...- Stack Overflow 调用未公开API SetWindowCompositionAttribute Win10下开启Aero - CSDN博客 Windows 10 开始菜单的高斯模糊效果是如何实现的

5.3K30

Windows 下的高 DPI 应用开发(UWP WPF Windows Forms Win32)

DPI 设置 如果用户设置中更改了系统 DPI 值或屏幕 DPI 值,那么 Windows 系统会提示需要注销才会应用修改。...方法是:打开“设置” -> “系统” -> “显示器” -> “高级缩放设置”,“高级缩放设置”,打开“允许 Windows 尝试修复应用,使其不模糊”。...但实际更早的 Windows 10 (1607) 就引入了相关 API,包括 SetThreadDpiAwarenessContext 和 PerMonitorV2 应用程序清单。...,如果你做到了 System Aware 的要求位图是不会模糊的(Vista 引入 DWM 虚拟化强制拉伸,主要是当时的引用没有做相关支持,DPI 情况下会控件会变得非常小且布局大概率会乱掉)。...- Per Monitor DPI - WPF Preview.docx at master · Microsoft/WPF-Samples Windows 10 中修复显示模糊的应用 - Windows

80950
  • .NET 4.6.2正式发布带来众多特性

    那些运行Windows 10并进行了周年更新的开发人员,其系统已经安装了4.6.2版本。 ...ClickOnce 当分发基于Windows Forms或WPF应用程序时,大多数组织都会认真考虑使用ClickOnce。ClickOnce允许应用程序通过URL便捷地分发。...谈及“软件和硬件设备存储持久化对称密钥”,至少是从Windows 7开始,微软就提供了Cryptography API: Next Generation (CNG)。....WPF 当使用Windows 10时,WPF现在可以自动显示和隐藏软键盘了(即屏幕键盘),并且可以酌情禁用WPF手写笔/触摸支持。对于Windows乏善可陈的手写笔支持,这是一项较大改进的一部分。...重视高DPI问题是过去几年中微软推动的另外一项改进。一个DPI比过去传统使用的显示器高出许多的显示器运行应用程序时就会出现这些问题。另外,这还会导致图像变小或模糊。与此相关的是多显示器支持。

    1.2K50

    CefSharp中文帮助文档「建议收藏」

    OSR模式中,每个帧被渲染到缓冲器,然后或者屏幕绘制作为的情况下WPF或可作为BitmapOffScreen。...显示/支持 WinForms/WPF需要使使用DPI的桌面应用程序能够DPI显示器(DPI Scale设置大于的显示器)正确运行DPI100%。...注意如果鼠标光标浏览器中的位置不正确,或者浏览器显示带有渲染/调整大小的黑框/边框,则需要制作您的应用程序DPI Aware。应用程序的其他部分也可能会显得模糊或尺寸不正确。...以下示例是Win 10 1703及更高版本的PerMonitor DPI Aware和旧版本的PerMonitor DPI感知。...这样可以CEF需要执行工作时发出通知,某些情况下,这可能会使您的应用程序响应速度更快。

    12.9K31

    WPF dotnet 6 开启 PM v2 的 DPI 感知 导致触摸线程访问 UI 属性抛异常

    带触摸屏的应用,应用运行过程中,切换屏幕的 DPI 之后,触摸过程有概率触发在触摸线程访问 UI 的依赖属性,触摸线程抛出异常炸掉应用 条件 必须同时满足以下条件: dotnet 6: dotnet...特性的 WPF 多屏高 DPI 应用开发 - walterlv 应用开启 StylusPlugIn 的支持 触摸设备运行,进行触摸交互 应用运行过程存在切换系统的 DPI 的值 需要先运行应用...支持 Windows 10 最新 PerMonitorV2 特性的 WPF 多屏高 DPI 应用开发 - walterlv 博客的方法给应用开启 PM v2 的功能 根据以上条件,给应用附加上 StylusPlugIn...然而他的更改已合入主干,导致了使用 StylusPlugIn 的触摸存在偏移 我 Try fix the first point in StylusPlugin in high DPI by lindexi...10 最新 PerMonitorV2 特性的 WPF 多屏高 DPI 应用开发 - walterlv Windows 下的高 DPI 应用开发(UWP / WPF / Windows Forms / Win32

    63600

    浅谈window桌面GUI技术及图像渲染性能测试实践

    至于应用程序,绝大多数win桌面应用都是基于GDI的,很老的图形库 (从某个版本起GDI也是跑D3D之上了,于是显卡厂家就不用写GDI驱动了),D3D(比如基于WPF的应用,今天主要介绍的应用),OpenGL...数据需要经过: App->DX runtime->User mode driver->dxgkrnl->Kernel mode driver->GPU 在到达GPU之前,全都是CPU执行的,所以从程序本身是无法获取渲染结果...提供 Win32 API的dll被加载到应用程序的进程中,应用程序通过这些API来创建线程、窗口和控件。...DPI设置,将机器的DPI设置为120%时,100x100大小的控件将显示为120x120像素 当在远程桌面上运行测试时,远程连接的选项“字体平滑”会影响控件显示和输出的图片 大屏幕可视化WPF应用 由于大屏幕的分辨率...这里我们折中使用实时判断标志位RGB像素点的方法来判断图片渲染的结果 首先,我们会使用取色器采样几个最后图像渲染完成的坐标像素点RGB值 原理其实很简单,只需要两步 鼠标移动的时候获取鼠标光标的位置 鼠标单击获取当前鼠标光标的位置的

    3.7K30

    将浏览器嵌入 .NET 应用程序中:DotNetBrowser 还是 CefSharp?

    Visual Studio设计器 现代 WPFWindows 窗体应用程序通常是设计器的帮助下在 Visual Studio 中创建的。...嵌入应用程序 UI CefSharp 提供 WPFWindows 窗体支持。但是,它的 WPF 实现只能在离屏渲染模式[13]下工作。此实现具有有限的触摸屏和 IME[14] 支持。...DotNetBrowser 两种渲染模式下同时支持 WPFWindows 窗体。硬件加速模式下,触摸、手势和 IME 由 Chromium 自行处理,因此它们开箱即用。...因此,桌面应用程序应具备 DPI 感知功能,才能在高 DPI 显示器(DPI 比例设置大于 100% 的显示器)正确运行。...初始化过程中,它会检查当前进程的 DPI 感知,并为相应的 Chromium 引擎设置匹配的 DPI 感知。因此,无需让您的应用程序显式识别 DPI 以避免DPI 显示呈现伪影。

    50720

    WPFWinForm中加载网页的几种方式及如何加载Flash库(WebBrowserCEF)

    比如Win10的是IE11,对应的兼容模式是IE7。 所以我Win10用下面两种方式获取到的IE版本都是11。...DOCTYPE指令展示网页 ie7//7000 (0x1B58) 使用WebBrowser Control控件的应用程序所使用的默认值,IE7标准模式中按照网页!...虽然更改后加载检测浏览器内核的网页显示是Edge,但是其实并不是使用的Edge。 WOW6432Node其实不是64位程序的配置,而是64位系统32位程序使用到的配置。...WinForm 对高分辨率屏幕的适配并不是很好,当分辨率较高时,Windows 系统会将程序里面的字体进行缩放, Windows 10 系统尤其严重,这将导致程序的界面大小变化,字体也会变得模糊。...方法1 我们用WebBrowser加载的网页,会看起来有点模糊,设置DPI设置的问题,解决方法如下: Form的属性设置如下 将 Form 的 AutoScaleMode 属性设置为 DPI Program.cs

    3.9K40

    将浏览器嵌入 .NET 应用程序中:DotNetBrowser 还是 CefSharp?

    Visual Studio设计器 现代 WPFWindows 窗体应用程序通常是设计器的帮助下在 Visual Studio 中创建的。...嵌入应用程序 UI CefSharp 提供 WPFWindows 窗体支持。但是,它的 WPF 实现只能在 离屏渲染模式[13] 下工作。此实现具有有限的触摸屏和IME[14]支持。...DotNetBrowser 两种渲染模式下同时支持 WPFWindows 窗体。硬件加速模式下,触摸、手势和 IME 由 Chromium 自行处理,因此它们开箱即用。...因此,桌面应用程序应具备DPI 感知功能[17],才能在高 DPI 显示器(DPI 比例设置大于 100% 的显示器)正确运行。...初始化过程中,它会检查当前进程的 DPI 感知,并为相应的 Chromium 引擎设置匹配的 DPI 感知。因此,无需让您的应用程序显式识别 DPI 以避免DPI 显示呈现伪影。

    50440

    WPF 引用 UWP 控件 不打包为 MSIX 分发的方法

    但是实际不打包也可以,此时可以和此前的 Win32 应用一样的分发方式进行分发,可以支持到 Win7 系统,当然了 Win7 系统可用不了 UWP 的控件,但是至少应用软件自身可以 Win7 继续运行的...第二个方法是原有的 WPF 项目中添加应用清单,应用清单设置可以 Win10 使用 右击项目添加应用清单 App.manifest 文件,在此文件添加 <supportedOS Id="{8e0f7a12...-- 设计此<em>应用程序</em>与其一起工作且已针对此<em>应用程序</em>进行测试的 <em>Windows</em> 版本的列表。取消评论适当的元素, <em>Windows</em> 将自动选择最兼容的环境。...-- 指示该<em>应用程序</em>可以感知 <em>DPI</em> 且 <em>Windows</em> <em>在</em> <em>DPI</em> 较高时将不会对其进行 自动缩放。...<em>Windows</em> Presentation Foundation (<em>WPF</em>)<em>应用程序</em>自动感知 <em>DPI</em>,无需 选择加入。

    72650

    .NET 基金会项目介绍-Windows Presentation Foundation WPF

    Windows Presentation Foundation (WPF) Windows Presentation Foundation (WPF) 是一个构建 Windows 桌面程序的 UI 框架...WPF 包含了一系列开发技术,包括有:应用程序建模、资源管理、控件集、绘图、布局、数据绑定和文档。...这就使得应用程序DPI 显示器也能展示的非常好,即使被无限的伸缩。 WPF 还包含了一个非常灵活的展示模型,例如,基于此,一个按钮展示视频都是非常简单的事情。...但是 WPF 依旧坚挺,特别是一些专业领域的应用中,WPF 表现更为耀眼,例如:同花顺 目前, WPF 已经可以基于 netcore 进行开发。...英文介绍 Windows Presentation Foundation (WPF) Windows Presentation Foundation (WPF) is a UI framework for

    1.2K00

    Windows微信DPI适配

    DPI的设备给我们提供了更精细的画质,然而Windows的大多数应用并没有适配高DPI的显示器,导致应用在这些设备显示模糊,体验非常差。...2.2 DPI和缩放比例的关系 现在我们已经知道DPI是个什么了,那么DPI又是怎样影响我们应用程序的界面的呢?...这个时候就我们需要在高DPI的设备放大我们的界面元素,DPI设备缩小我们的界面元素,使用户不同的设备看到的内容的大小基本一致。 上面例子中我们是使用面板DPI来举的例子。...虚拟化之后的应用由于直接对像素进行缩放,所以界面会变得模糊。 ?...四、总结 对于Windows平台而言,未来高清设备一定会越来越多,所以适配DPI变得越来越重要。

    5.7K90

    将 UWP 的有效像素(Effective Pixels)引入 WPF

    接下来,当我们谈论尺寸时,只会用以上三个概念进行比较,而不会再用模糊不清的尺寸名词。...吐槽 DIP WPF 曾经说自己用的是“设备无关单位”(DIP),愿景是在所有显示器显示的物理尺寸相同。比如你代码中写了 Width="96" 的按钮,那么在所有显示器其尺寸为 1 英寸。...WPF 说自己的开发无需考虑 DPI 缩放,因为它会自己做缩放。那么当你写下 Width="96" 时,到底缩放还是不缩放呢?...Windows 操作系统支持的最低 DPI 设置只能是 96 了,不能再低;以至于后者实际相同观看距离比前者显示的界面元素的物理尺寸会大很多。...(这里不想吐槽设置分辨率还不设置为居中显示的用户,那种画面模糊的感觉,怎么能承受!) 事实,目前为止,只有一款设备真正达到了微软期望中的理想状态,那就是——Surface Studio!

    1.5K21
    领券