Loading

摘要: 在WPF中使用Shape实现复杂线条动画后,尝试在Avalonia中也实现同样效果。尽管官方提供了从WPF到Avalonia的快速入门文档,但由于第一次使用Avalonia,体验过程中并不是很顺利,主要是卡在线性渐变画刷LinearGradientBrush的使用上。Avalonia中的线性渐变画刷 阅读全文
posted @ 2024-05-22 09:12 czwy 阅读(717) 评论(2) 推荐(3) 编辑
摘要: 看到巧用 CSS/SVG 实现复杂线条光效动画的文章,便也想尝试用WPF的Shape配合动画实现同样的效果。ChokCoco大佬的文章中介绍了基于SVG的线条动画效果和通过角向渐变配合 MASK 实现渐变线条两种方式。WPF中的Shape与SVG非常相似,因此这种方式也很容易实现。但WPF中仅有的两 阅读全文
posted @ 2024-05-15 09:08 czwy 阅读(2374) 评论(17) 推荐(41) 编辑
摘要: 在WPF中,通过资源文件实现主题切换是个常见的功能,有不少文章介绍了如何实现手动切换主题。那如何实现自动切换主题呢?通常有两种机制:一是跟随系统明暗主题切换,二是像手机操作系统那样根据日出日落时间自动切换。本文将以终为始,采用倒推法一步步介绍如何使用.NET免费获取日出日落时间。 获取日出日落时间 阅读全文
posted @ 2024-05-09 09:01 czwy 阅读(846) 评论(4) 推荐(5) 编辑
摘要: 在某些场景下,需要把程序绑定到指定CPU核心提高执行效率。通过微软官方文档查询到Windows提供了两个Win32函数:SetThreadAffinityMask和SetProcessAffinityMask 为指定线程和进程设置处理器关联掩码。通俗的讲就是在指定的CPU核心上执行线程或者进程。 这 阅读全文
posted @ 2024-04-29 17:35 czwy 阅读(1199) 评论(5) 推荐(18) 编辑
摘要: 有网友问WPF中一些文字模糊是什么问题。之前我也没有认真思考过这个问题,只是大概知道和WPF的像素对齐(pixel snapping)、抗锯齿(anti-aliasing)有关,通过设置附加属性TextOptions.TextFormattingMode或者TextOptions.TextRende 阅读全文
posted @ 2024-03-12 17:29 czwy 阅读(1353) 评论(3) 推荐(12) 编辑
摘要: 在硬件性能不断提升的现在,软件性能依旧是开发人员关注的重点。不同类型的程序关注的具体性能指标有所不同,服务器程序注重吞吐量,游戏引擎追求渲染效率,桌面程序则关注内存消耗以及界面加载效率和流畅性。当我们需要进行性能优化时,首先需要找到性能瓶颈。本文将介绍两个WPF性能优化分析工具:内存使用率和应用程序 阅读全文
posted @ 2024-02-29 08:43 czwy 阅读(1270) 评论(2) 推荐(12) 编辑
摘要: 在用户界面技术中,绘图是一个绕不开的话题。WPF提供了多种可根据应用程序要求进行优化的2D图形和图像的处理功能,包括画刷(Brush)、形状(Shape)、几何图形(Geometry)、图画(Drawing)和变换(Transform)等。其中形状(Shape)、几何图形(Geometry)和图画( 阅读全文
posted @ 2024-01-31 20:52 czwy 阅读(974) 评论(2) 推荐(7) 编辑
摘要: .NET中有多少种定时器一文介绍过.NET中至少有6种定时器,但精度都不是特别高,一般在15ms~55ms之间。在一些特殊场景,可能需要高精度的定时器,这就需要我们自己实现了。本文将讨论高精度定时器实现的思路。 高精度定时器 一个定时器至少需要考虑三部分功能:计时、等待、触发模式。计时是进行时间检查 阅读全文
posted @ 2023-12-20 08:52 czwy 阅读(2981) 评论(19) 推荐(25) 编辑
摘要: 前段时间看到群友讨论压缩包能不能运行,想起了n年前用自解压文件SFX实现的一个“需求”:在没有安装任何应用软件的Windows(当时还要支持XP)上能双击打开自定义格式的文件。当时第一反应是这“需求”太奇葩了,简直是不可能。但思考后认为这个“需求”存在一定的合理性,因为当时的目标用户群体并不能熟练使 阅读全文
posted @ 2023-12-06 20:38 czwy 阅读(340) 评论(0) 推荐(3) 编辑
摘要: .NET中至少有6种定时器,每一种定时器都有它的用途和特点。根据定时器的应用场景,可以分为UI相关的定时器和UI无关的定时器。本文将简单介绍这6种定时器的基本用法和特点。 UI定时器 .NET中的UI定时器主要是WinForm、WPF以及WebForm中的定时器。分别为: System.Window 阅读全文
posted @ 2023-11-28 18:47 czwy 阅读(2981) 评论(8) 推荐(21) 编辑