WPF中的UseLayoutRounding和SnapsToDevicePixels

这篇具有很好参考价值的文章主要介绍了WPF中的UseLayoutRounding和SnapsToDevicePixels。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

WPF中的UseLayoutRounding和SnapsToDevicePixels

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

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

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

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

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

<Grid UseLayoutRounding="True" SnapsToDevicePixels="True">

UIElement.UseLayoutRounding 属性

获取或设置一个值,该值确定对象及其可视化子树的呈现是否应使用将呈现与整像素对齐的舍入行为。(一般在容器元素上设置, 发生在Measure&Arrange期间)文章来源地址https://www.toymoban.com/news/detail-660101.html

到了这里,关于WPF中的UseLayoutRounding和SnapsToDevicePixels的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【WPF.NET开发】WPF中的XAML资源

    使用 XAML 中的资源 静态和动态资源 静态资源 动态资源 样式、DataTemplate 和隐式键 资源是可以在应用中的不同位置重复使用的对象。 资源的示例包括画笔和样式。 本概述介绍如何使用 Extensible Application Markup Language (XAML) 中的资源。 你还可以使用代码创建和访问资源。  备注

    2024年01月17日
    浏览(63)
  • WPF中的效果Effect

    WPF提供了可应用于任何元素的可视化效果。效果的目标是提供一种简便的声明式方法,从而改进文本、图像、按钮以及其他控件的外观。不是编写自己的绘图代码,而是使用某个继承自Effect的类,以立即获得诸如模糊、光辉以及阴影等效果。 名称 说明 属性 BlurEffect 模糊元素

    2024年02月11日
    浏览(42)
  • WPF中的GridSplitter使用原则

    GridSplitter 对象必须放在Grid单元格中。可以预留一行或者列的 Height 或 Width 属性设置为auto。 GridSplitter 对象总是改变整行或整列的尺寸,为使该对象外观和行为保持一致,需要拉伸 GridSplitter 对象使其穿越整行或整列,而不是将其限制在单元格中,可以设置 RowSpan 或 ColumnSpan

    2024年02月12日
    浏览(34)
  • 【wpf】xaml 中的参数复用

    xaml中有几种复用的方式: 有时在xaml中,我们需要复用一些参数,比如 固定的一个值。 有时是固定的一个样式。 有时多个控件都要设置一个高度,我可以引入sys 我就使用这个吧: xmlns:sys=\\\"clr-namespace:System;assembly=mscorlib\\\" 用的更多的其实是margin,我们试一试: 这里 mm 用的是

    2024年02月07日
    浏览(80)
  • 真正的理解WPF中的TemplatedParent

    童鞋们在WPF中经常看到   TemplatedParent  ,或者经常看到下面的用法: 是不是看的一脸蒙圈? 先看官方文档: 意思是 和这个控件的  模板上的  父亲,如果这个控件不是模板创建的,那么这个值就没用。 是不是还是不懂? 黄老师来给你举个例子,看下面的代码

    2024年02月17日
    浏览(29)
  • WPF中的数据转换-StringFormat

    字符串格式化。使用该功能可以通过设置Binding.StringFormat属性对文本形式的数据进行转换——例如包含日期和数字的字符串。对于至少一半的格式化任务,字符串格式化是一种便捷的技术。 当设置Binding.StringFormat属性时,使用标准的.NET格式字符串,具体形式{0:C}。其中,0代表

    2024年02月11日
    浏览(31)
  • 【WPF应用35】深度解析WPF中的TreeView控件:功能、用法、特性与最佳实践

    WPF(Windows Presentation Foundation)是微软推出的一个用于构建桌面应用程序的图形子系统。在WPF中,TreeView是一种常用的树形控件,用于显示层次结构的数据显示。本文将详细介绍WPF中的TreeView控件,并提供一个简单的示例。 TreeView控件用于显示一个层次结构的列表,通常用于显

    2024年04月10日
    浏览(80)
  • WPF中的DataGrid显示SQL数据

    通常, DataGrid 通过对数据进行分组、排序和筛选来以不同的方式查看数据是非常有用的。 若要对中的数据进行分组、排序和筛选 DataGrid ,请将其绑定到 CollectionView 支持这些函数的。 然后,你可以在中处理数据, CollectionView 而不会影响基础数据源数据。 集合视图中的更改会

    2024年02月09日
    浏览(48)
  • WPF实现html中的table控件

    前言 相信很多做WPF开发的小伙伴都遇到过表格类的需求,虽然现有的Grid控件也能实现,但是使用起来的体验感并不好,比如要实现一个Excel中的表格效果,估计你能想到的第一个方法就是套Border控件,用这种方法你需要控制每个Border的边框,并且在一堆Bordr中找到Grid.Row,G

    2024年03月26日
    浏览(45)
  • WPF的CheckBox中的三个状态

    CheckBox 控件和 RadioButton 控件是继承自 ToggleButton 类,这意味着用户可切换他们的开关状态,其中 IsChecked 属性是可空的Boolean类型,这意味着该属性可以设置为true,false或null。 null值表示不确定状态,显示具有阴影的复选框,不确定状态用于表示尚未设置的值 除了IsChecked属性外

    2024年02月12日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包