摘要: 本文告诉大家如何修复 WPF 的 ContextMenu 在开启 PerMonitorV2 之后,在双屏不同的 DPI 的设备上,在副屏弹出的 ContextMenu 使用了主屏的 DPI 导致缩放错误的问题 阅读全文
posted @ 2022-09-29 08:13 lindexi 阅读(124) 评论(0) 推荐(0) 编辑
摘要: WPF 切换主题使用 luna 复古版本 本文告诉大家如何在 WPF 里面使用 luna 等复古主题 阅读全文
posted @ 2022-09-29 08:13 lindexi 阅读(320) 评论(0) 推荐(0) 编辑
摘要: 我在开发软件进行测试时,需要测试拖入的文件被占用时软件的行为,于是就做了一个文件占用工具,此工具可以将某个文件进行占用,以及获取某个文件被哪个进程占用 阅读全文
posted @ 2022-09-29 08:13 lindexi 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 本文告诉大家几个不同的方法在 WPF 里,使用多线程修改或创建 ObservableCollection 列表的数据 阅读全文
posted @ 2022-09-29 08:12 lindexi 阅读(1605) 评论(2) 推荐(1) 编辑
摘要: 本文记录将 WPF 控件放入到 UserControl 里,如果此 UserControl 没有被设置 Visibility 为可见过,那么放在此 UserControl 内的控件将获取不到 HwndSource 内容 阅读全文
posted @ 2022-09-29 08:12 lindexi 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 在 WPF 中,使用 Popup 也许会看到 PreviewMouseDown 事件被吃掉 阅读全文
posted @ 2022-09-29 08:12 lindexi 阅读(213) 评论(2) 推荐(0) 编辑
摘要: 本文记录在 Popup 失焦后导致 ListBox 无法用 MouseWheel 滚动问题 阅读全文
posted @ 2022-09-29 08:11 lindexi 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 准确来说,这个不算是 WPF 的问题,而是系统等的问题。在某些设备上的使用了 WindowChrome 功能的 WPF 应用,将在运行过程,在 WindowChromeWorker 类里面抛出 System.OverflowException 异常。核心原因是这些设备是 x64 设备,运行的 x64 的 WPF 应用程序,在消息循环里面传入的 lParam 是一个 x64 的指针,但在 WPF 里面使用 ToInt32 方法进行转换,刚好此 x64 的指针超过 int 的范围,从而抛出异常 阅读全文
posted @ 2022-09-29 08:11 lindexi 阅读(456) 评论(5) 推荐(1) 编辑
摘要: 大家都知道,在 WPF 里面,可以让资源字典合并其他资源字典,从而定义出资源字典引用树。然而在资源字典引用树里面,如果没有理清关系,将可以作出一个超级复杂的引用关系网。如果在性能优化中,将网断开部分,可能就会出现找不到资源的情况。本文将告诉大家 WPF 的资源字典树在引用和寻找关系上的坑 阅读全文
posted @ 2022-09-29 08:11 lindexi 阅读(1452) 评论(0) 推荐(1) 编辑
摘要: 在应用启动过程里,除了主 UI 线程之外,如果还多启动了新的 UI 线程,且此新的 UI 线程碰到 ContentPresenter 类型,那么将可能存在让新的 UI 线程和主 UI 线程互等。这是多线程安全问题,不是很好复现,即使采用 demo 的代码,也需要几千次运行才能在某些配置比较差的机器上遇到新的 UI 线程和主 UI 线程互等,应用启动失败。本文来告诉大家复现的步骤,以及原因,和解决方法 阅读全文
posted @ 2022-09-29 08:11 lindexi 阅读(528) 评论(0) 推荐(0) 编辑
摘要: WPF 开源二维绘画小工具 GeometryToolDemo 项目 这是一个演示 WPF 进行二维绘画的小工具 Demo 项目,基于 MIT 协议在 GitHub 上完全开源 阅读全文
posted @ 2022-09-29 08:10 lindexi 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 给 WPF 的 Pen 的 DashStyle 属性设置 0 0 的虚线,在绘制几何图形时,绘制的几何图形的尺寸将关联渲染线程所使用的 CPU 资源。大约在周长大于 500 时,将可以从任务管理器上看到高 CPU 占用 阅读全文
posted @ 2022-09-29 08:10 lindexi 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 对于 Cookie 的处理上,我最近遇到一个问题,那就是如何分割 Cookie 的内容。有人说是使用逗号分割,有人说是使用分号分割,究竟用哪个才是对的?其实这个答案是需要分为两个过程,分别是请求和响应,来进行回答。请求过程的 Cookie 和响应返回的 Cookie 的格式是不相同的 请求 Requ 阅读全文
posted @ 2022-09-29 08:10 lindexi 阅读(1136) 评论(0) 推荐(0) 编辑
摘要: 本文记录某些软件,例如 向日葵远程控制 软件占用剪贴板,导致 WPF 应用使用剪贴板拷贝内容和设置剪贴板时,抛出 System.Runtime.InteropServices.COMException (0x800401D0): OpenClipboard 失败 (0x800401D0 (CLIPBRD_E_CANT_OPEN)) 异常 阅读全文
posted @ 2022-09-29 08:09 lindexi 阅读(927) 评论(0) 推荐(0) 编辑
摘要: DirectX 使用 Vortice 从零开始控制台创建 Direct2D1 窗口修改颜色 本文将告诉大家如何使用 Vortice 底层库从零开始,从一个控制台项目,开始搭建一个最简单的使用 Direct2D1 的 DirectX 应用。本文属于入门级博客,期望本文能让大家了解 Vortice 底层库是可以如何调用 DirectX 的功能,以及了解 DirectX 中,特别是 D2D 部分的初始化逻辑 阅读全文
posted @ 2022-09-29 08:09 lindexi 阅读(831) 评论(0) 推荐(2) 编辑
摘要: 本文告诉大家在使用 ObservableCollection 时,抛出 InvalidOperationException 异常,提示 Cannot change ObservableCollection during a CollectionChanged event 内容,的原因和解决方法 阅读全文
posted @ 2022-09-29 08:08 lindexi 阅读(241) 评论(0) 推荐(0) 编辑
摘要: WPF 推荐一个剪贴板内容查看工具 本文来安利大家一个好用的 Windows 剪贴板的内容查看工具 阅读全文
posted @ 2022-09-29 08:07 lindexi 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 本文告诉大家如何解决界面打不开,抛出 System.ArithmeticException: Overflow or underflow in the arithmetic operation 异常的修复方法 阅读全文
posted @ 2022-09-29 08:07 lindexi 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 本文告诉大家如何调试 WPF 的某个依赖属性被变更的方法 阅读全文
posted @ 2022-09-29 08:07 lindexi 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 本文告诉大家如何在 WPF 里,通过 GifBitmapDecoder 调用 WIC 层来解析 GIF 图片,然后采用动画的方式进行播放 阅读全文
posted @ 2022-09-29 08:07 lindexi 阅读(176) 评论(0) 推荐(0) 编辑