WPF中的UseLayoutRounding和SnapsToDevicePixels

WPF中的UseLayoutRounding和SnapsToDevicePixels

最近在调试项目中的UI时发现几个诡异问题:

  1. Grid容器里的GridSplitter设置粗细一样, 但截屏放大后发现线条不一样粗并且明暗不一致,导致打印出来有问题。

  2. 自定义控件的边缘在某些窗体中显示模糊。

导致以上问题的原因是:

1)UserLayoutRounding为False,导致控件布局相对屏幕若不是整数则不会四舍五入,导致边缘模糊。

2)SnapsToDevicePixels默认为false, 为true可以让元素像素级对齐。

xml 复制代码
<Grid UseLayoutRounding="True" SnapsToDevicePixels="True">

UIElement.UseLayoutRounding 属性

获取或设置一个值,该值确定对象及其可视化子树的呈现是否应使用将呈现与整像素对齐的舍入行为。(一般在容器元素上设置, 发生在Measure&Arrange期间)

相关推荐
SamChan902 天前
PDF页面旋转与CropBox陷阱:译文回填位置总是错位的根因实测
python·ai·pdf·wpf
SamChan903 天前
PDF翻译时页眉页脚总在捣乱?跨页重复文本块的检测与过滤实测
人工智能·python·ai·pdf·wpf
samble10 天前
从零搭建灌装监控系统(四):深色主题与样式系统,ResourceDictionary 统一管理
c#·wpf·mvvm·样式·工业控制
_Jonas10 天前
.net framework开发环境正式环境配置文件的切换
.net·wpf
dalong1012 天前
WPF:Modbus 状态监控
wpf·modbus
He BianGu13 天前
【WPF-VisionMaster】机器视觉通用平台V5.0版本发行说明
opencv·c#·wpf·halcon·机器视觉·visionmaster
fogota16 天前
Emoji与Segoe MDL2 Assets的比较
c#·wpf
fogota16 天前
C# WPF 按钮加载字体图标 / 动物头像
c#·.net·wpf
fogota16 天前
C# WPF 按钮加载系统图标 / 动物头像
c#·.net·wpf
军训猫猫头16 天前
C# 封装 MySQL 自动写入与查询工具类(基于 MySqlConnector)
mysql·c#·.net·wpf