WPF 使用 HLSL + Clip 实现高亮歌词光照效果
最近在搓一个Lyricify Lite类似物,原本使用渐变画刷实现歌词高亮,但是发现视觉效果与Apple Music相去甚远:单纯使用白色渐变画刷缺乏“高亮”的光照感觉,而Apple Music的歌词高亮则更像是有光线投射在歌词上,形成一种柔和的发光效果。 受到吕毅大佬的文章使用 WPF 做一个可以 ...
WPF 使用 RenderTransform 实现高性能平滑滚动的 ScrollViewer
在之前的两篇文章中,我们探讨了 WPF 中实现平滑滚动的不同方案: WPF 如何流畅地滚动ScrollViewer 简单实现下:基于 DoubleAnimation 的动画方案。 WPF 使用CompositionTarget.Rendering实现平滑流畅滚动的ScrollViewer:基于 Co ...
WPF UI卡顿自动检测器
这是一个在 WPF 开发中非常实用的需求。为了实现一个健壮(Robust)且高效(Efficient)的 UI 卡顿检测器,我们需要遵循以下核心原则: 独立的看门狗线程:检测逻辑不能运行在 UI 线程上,必须在一个后台线程运行。 低侵入性:检测机制本身不能消耗过多的 CPU 资源,不能频繁打断 UI ...
WPF 为ContextMenu使用Fluent风格的亚克力材质特效
书接上回,我们的Fluent WPF的版图已经完成了: Fluent Window: WPF 模拟UWP原生窗口样式——亚克力|云母材质、自定义标题栏样式、原生DWM动画 (附我封装好的类) Fluent Popup & ToolTip: WPF中为Popup和ToolTip使用WindowMate ...
dotnet 读 WPF 源代码 学习使用 Microsoft.DotNet.Arcade.Sdk 处理代码里的多语言
在 WPF 开源代码里面,可以看到是从各个项目的 Strings.resx 和对应的 xlf 文件,生成对应项目的多语言程序集。这里的多语言程序集可用于抛出异常时,给出本地化的消息提示 ...
【编辑】WPF 转换器中如何使用依赖属性?
【编辑】WPF 转换器中如何使用依赖属性? 独立观察员 2025 年 10 月 21 日 0、概述 目前 WPF 的转换器中无法放置依赖属性,ConverterParameter 又不支持绑定,所以如果在转换器场景中需要绑定的话,就有点头疼了。 遇事不决,问 AI,所以我把这个问题在 GitHub ...
WPF 通过 WriteableBitmap 实现 TAGC 低光增强效果算法
我在寻找将一些拍摄出来的比较暗的图片进行光亮增强的算法,用于处理我出门拍的一些照片。我从博客园找到了 Imageshop 大佬记录的伊拉克团队的TAGC(低光增强效果)算法实现,通过阅读大佬的博客和对应的论文,基于 WPF 的 WriteableBitmap 实现 TAGC 低光增强效果算法 ...
Windows 通过编辑注册表设置左右手使用习惯更改 Popup 弹出位置
本文告诉大家如何在通过更改注册表的设置,从而更改平板电脑设置 Tablet PC Settings 的左右手使用习惯 Handedness 的惯用左手和惯用右手选项 ...
WPF 引用 ASP.NET Core 的 AOT 版本
之前我写过博客让 WPF 和 ASP.NET Core 跑在一个应用程序进程里面,这样的方式十分简单方便,缺点是输出路径会带一些 ASP.NET Core 的 DLL 文件。本文将来尝试对 ASP.NET Core 进行 AOT 发布为类库,通过类库调用方式在 WPF 里引用 ASP.NET Cor... ...
C# WPF 内置解码器实现 GIF 动图控件
相对于 WinForm PictureBox 控件原生支持动态 GIF,WPF Image 控件却不支持,让人摸不着头脑 常用方法 提到 WPF 播放动图,常见的方法有三种 MediaElement 使用 MediaElement 控件,缺点是依赖 Media Player,且不支持透明 <Medi ...
TextBoxPopupBehavior控件
功能说明 一个用于 WPF TextBox 的附加行为,实现 TextBox 与 Popup 控件的联动效果: 自动弹出/关闭: TextBox 获得焦点时自动打开关联的 Popup TextBox 失去焦点时自动关闭关联的 Popup 点击外部关闭: 点击 TextBox 和 Popup 外部区域 ...
WPF 通过 GetRawPointerDeviceData 从 WM_POINTER 消息触摸裸数据
本文将告诉大家如何在 WPF 里面,通过 GetRawPointerDeviceData 方法从 WM_POINTER 指针消息触摸裸数据,以及解析数据信息获取到更多触摸框上报的信息 ...
通过Themes/Generic.xaml为WPF控件提供默认样式不生效
1. 我有一个netframework4.8的类库项目,里面提供了一个自定义控件,然后我按照以下方法为控件提供了默认样式 a) 添加Themes\Generic.xaml文件,文件中提供自定义控件的默认样式 <Style TargetType="MyControl"> <Setter Propert ...
WPF 从 WriteableBitmap 里获取到渲染线程使用的 IWICBitmap 对象
在 WPF 框架底层里面,对 WriteableBitmap 的实现是有双份内存,具体实现放在 CSwDoubleBufferedBitmap 里面。表层的内存是一个数组,里层内存是 IWICBitmap 对象,渲染时将使用 IWICBitmap 对象加入到渲染管线 ...
WPF引用外部资源(样式、文件等)方式
具体代码请下载 项目文件 注:本项目使用VS2022开发环境、.NET8框架及MahApps.Metro界面UI。 摘取关键代码如下: <StackPanel Grid.Row="0"> <!-- *************************************************** ...
抽离BlazorWebview中的.Net与Javascript的互操作库
做这个的目的是想使用 Blazor 中的 Javascript 与 C#中的互操作,但是又不需要加载 Blazor 整个类库,另外 BlazorWebView 组件没有支持直接通过 Http 协议加载 web 页面,调试的时候需要先把后端接口写好,然后前端打包,然后一起调试,感觉很麻烦,因此想能不能 ...
[WPF] 在RichTextBox中输出Microsoft.Extension.Logging库的日志消息
背景 微软的日志库一般是输出到控制台的,但是在WPF中并不能直接使用控制台,需要AllocConsole。 但是这种做法个人觉得不太安全(一关闭控制台整个程序就退出了?)。这时候就需要一个更加友好的方式输出日志。 问题 那如何将日志的内容显示到RichTextBox中? 实现LoggerProces ...
WPF 你真的会写 XAML 吗?浅谈 ControlTemplate 、DataTemplate 和其它 Template
WPF 你真的会写 XAML 吗?浅谈 ControlTemplate 、DataTemplate 和其它 Template 本文希望从写死的代码慢慢引入 WPF 的一些机制。 一、Button 难题 我们想要修改 Button 的背景色但是效果非常不理想,默认的 Button 样式是完全无法给大家 ...
WPF DataGrid多选行数据并绑定属性
在WPF的第三方控件UI库中,有些DataGrid实现了但是又有一些没实现多选行绑定数据。所有我现在通过附加属性来实现。 首先,实现DataGrid多选附加属性类 /// <summary> /// DataGrid多选附加属性 /// </summary> public class DataGri ...
WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
开源项目名称:leagueoflegends-OpenSilver 作者:Vicky&James leagueoflegends-opensilver:https://github.com/jamesnetgroup/leagueoflegends-opensilver leagueoflegend ...


