自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

walterlv - 吕毅

欢迎访问 https://blog.walterlv.com/ 热爱设计,不止是程序,更是艺术!

原创 使用 SetWindowCompositionAttribute 来控制程序的窗口边框和背景(可以做 Acrylic 亚克力效果、模糊效果、主题色效果等)

Windows 系统中有一个没什么文档的 API,SetWindowCompositionAttribute,可以允许应用的开发者将自己窗口中的内容渲染与窗口进行组合。这可以实现很多系统中预设的窗口特效,比如 Windows 7 的毛玻璃特效,Windows 8/10 的前景色特效,Windows...

2019-11-27 07:58:55

阅读数 101

评论数 3

原创 什么是模态窗口?本文带你了解模态窗口的本质

做 Windows 桌面应用开发的小伙伴们对“模态窗口”(Modal Dialog)一定不陌生。如果你希望在模态窗口之上做更多的事情,或者自己实现一套模态窗口类似的机制,那么你可能需要了解模态窗口的本质。 本文不会太深,只是从模态窗口一词出发,抵达大家都熟知的一些知识为止。 本文内容开发中的模态...

2019-11-27 08:05:33

阅读数 58

评论数 0

原创 直击本质:WPF 框架是如何实现模态窗口的

想知道你在 WPF 编写 Window.ShowDialog() 之后,WPF 框架是如何帮你实现模态窗口的吗? 本文就带你来了解这一些。 本文内容`Window.ShowDialog``ShowHelper` Window.ShowDialog WPF 显示模态窗口的方法就是 Window.S...

2019-11-27 08:01:45

阅读数 52

评论数 0

原创 Windows 系统上用 .NET/C# 查找所有窗口,并获得窗口的标题、位置、尺寸、最小化、可见性等各种状态

在 Windows 应用开发中,如果需要操作其他的窗口,那么可以使用 EnumWindows 这个 API 来枚举这些窗口。 你可以使用本文编写的一个类型,查找到所有窗口中你关心的信息。 本文内容需要使用的 API枚举所有窗口附源码 需要使用的 API 枚举所有窗口仅需要使用到 EnumWind...

2019-11-27 08:01:00

阅读数 111

评论数 0

原创 .NET/C# 检测电脑上安装的 .NET Framework 的版本

如果你希望知道某台计算机上安装了哪些版本的 .NET Framework,那么正好本文可以帮助你解决问题。 本文内容如何找到已安装的 .NET Framework注册表位置和含义读取注册表 如何找到已安装的 .NET Framework 有的电脑的 .NET Framework 是自带的,有的是...

2019-11-27 07:59:50

阅读数 26

评论数 0

原创 使用傲梅分区助手无损合并分区,无损调整分区大小

Windows 本身就提供了强大的磁盘和分区管理工具,一个是操作简单的“磁盘管理”,一个是功能强大的命令行版的“diskpart”。不过这两个都有一些限制,一是不能影响到系统文件,二是其修改的分区不能被应用程序占用(diskpart 可在下次重启时做到)。另外,系统为了管理工具操作的效率和正确性,...

2019-11-27 07:53:09

阅读数 183

评论数 0

原创 EFI 分区/恢复分区不可删除?你需要使用命令行了(全命令行操作)

Windows 系统在安装的时候,会自动为我们的磁盘划分一个恢复分区和一个 EFI 分区。如果后面不打算再用这些分区的时候,却发现无法删除。 本文将提供解决方法。 因为误操作会导致数据丢失,所以我将两种不同的解决方法分开成两篇文章以避免干扰: EFI 分区/恢复分区不可删除?你需要使用命令行了...

2019-11-27 07:52:18

阅读数 48

评论数 0

原创 EFI 分区/恢复分区不可删除?你需要使用命令行了(配合鼠标操作)

Windows 系统在安装的时候,会自动为我们的磁盘划分一个恢复分区和一个 EFI 分区。如果后面不打算再用这些分区的时候,却发现无法删除。 本文将提供解决方法。 因为误操作会导致数据丢失,所以我将两种不同的解决方法分开成两篇文章以避免干扰: EFI 分区/恢复分区不可删除?你需要使用命令行了...

2019-11-27 07:51:32

阅读数 25

评论数 0

原创 WPF 程序如何移动焦点到其他控件

WPF 中可以使用 UIElement.Focus() 将焦点设置到某个特定的控件,也可以使用 TraversalRequest 仅仅移动焦点。本文介绍如何在 WPF 程序中控制控件的焦点。 本文内容`UIElement.Focus``TraversalRequest`关于逻辑焦点和键盘焦点跨窗...

2019-11-27 07:50:30

阅读数 33

评论数 0

原创 使用 SetParent 制作父子窗口的时候,如何设置子窗口的窗口样式以避免抢走父窗口的焦点

制作传统 Win32 程序以及 Windows Forms 程序的时候,一个用户看起来独立的窗口本就是通过各种父子窗口嵌套完成的,有大量窗口句柄,窗口之间形成父子关系。不过,对于 WPF 程序来说,一个独立的窗口实际上只有一个窗口句柄,窗口内的所有内容都是 WPF 绘制的。 如果你不熟悉 Win3...

2019-11-27 07:49:47

阅读数 86

评论数 0

原创 WPF 程序如何跨窗口/跨进程设置控件焦点

WPF 程序提供了 Focus 方法和 TraversalRequest 来在 WPF 焦点范围内转移焦点。但如果 WPF 窗口中嵌入了其他框架的 UI(比如另一个子窗口),那么就需要使用其他的方法来设置焦点了。 一个粗略的设置方法是,使用 Win32 API: SetFocus(hwnd); ...

2019-11-27 07:47:47

阅读数 24

评论数 0

原创 .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件

弱引用是 .NET 引入的概念,可以用来协助解决内存泄漏问题。然而事件也可能带来内存泄漏问题,是否有弱事件机制可以使用呢?.NET 没有自带的弱事件机制,但其中的一个子集 WPF 带了。然而我们不是什么项目都能引用 WPF 框架类库的。 本文介绍 Walterlv.WeakEvents 库来定义和...

2019-11-27 07:47:03

阅读数 16

评论数 0

原创 .NET/C# 利用 Walterlv.WeakEvents 高性能地中转一个自定义的弱事件(可让任意 CLR 事件成为弱事件)

弱引用是 .NET 引入的概念,可以用来协助解决内存泄漏问题。然而事件也可能带来内存泄漏问题,是否有弱事件机制可以使用呢?.NET 没有自带的弱事件机制,但其中的一个子集 WPF 带了。然而我们不是什么项目都能引用 WPF 框架类库的。网上有很多弱事件的 NuGet 包,不过仅仅支持定义事件的时候...

2019-11-27 07:45:45

阅读数 12

评论数 0

原创 .NET 设计一套高性能的弱事件机制

弱引用是 .NET 引入的概念,可以用来协助解决内存泄漏问题。然而事件也可能带来内存泄漏问题,是否有弱事件机制可以使用呢?.NET 没有自带的弱事件机制,但其中的一个子集 WPF 带了。然而我们不是什么项目都能引用 WPF 框架类库的。网上有很多弱事件的 NuGet 包,不过仅仅支持定义事件的时候...

2019-11-27 07:44:55

阅读数 29

评论数 0

原创 如何在 WPF 中获取所有已经显式赋过值的依赖项属性

获取 WPF 的依赖项属性的值时,会依照优先级去各个级别获取。这样,无论你什么时候去获取依赖项属性,都至少是有一个有效值的。有什么方法可以获取哪些属性被显式赋值过呢?如果是 CLR 属性,我们可以自己写判断条件,然而依赖项属性没有自己写判断条件的地方。 本文介绍如何获取以及显式赋值过的依赖项属性。...

2019-11-27 07:44:05

阅读数 12

评论数 0

原创 在 WPF 中获取一个依赖对象的所有依赖项属性

本文介绍如何在 WPF 中获取一个依赖对象的所有依赖项属性。 本文内容通过 WPF 标记获取通过设计器专用方法获取 通过 WPF 标记获取 public static IEnumerable<DependencyProperty> EnumerateDependencyPropert...

2019-11-27 07:43:34

阅读数 16

评论数 0

原创 WPF 制作高性能的透明背景异形窗口(使用 WindowChrome 而不要使用 AllowsTransparency=True)

在 WPF 中,如果想做一个背景透明的异形窗口,基本上都要设置 WindowStyle="None"、AllowsTransparency="True" 这两个属性。如果不想自定义窗口样式,还需要设置 Background="Transparent...

2019-11-27 07:42:44

阅读数 51

评论数 0

原创 临时编写和调试 C++ 代码?用 VSCode 就够了!一分钟搭好 C++ 调试环境

突然间要编写或者调试几个 C++ 的小程序,动用 Visual Studio 创建一个解决方案显得大了些。如果能够利用随时随地就方便打开的 Visual Studio Code 来开发,则清爽很多。 本文教你一分钟在 Visual Studio Code 中搭建好 C++ 开发环境。 本文大纲 ...

2019-11-27 07:41:11

阅读数 29

评论数 0

原创 发现电脑屏幕总是不自动关闭?看看你是否打开了这些程序……

本文收集一些已知的导致电脑屏幕不关闭的程序。如果你发现无论你设置多短的屏幕关闭超时时间但一直都不关闭,那么可以参考本文检查是否打开了这些程序。 本文内容电源和睡眠大多数游戏应用工具为什么我想整理这份名单 电源和睡眠 先检查一下你系统设置中的电源和睡眠选项,时间不应该太长。一定要先看看这里,别到时...

2019-11-27 07:38:20

阅读数 27

评论数 0

原创 .NET/C# 阻止屏幕关闭,阻止系统进入睡眠状态

在 Windows 系统中,一段时间不操作键盘和鼠标,屏幕便会关闭,系统会进入睡眠状态。但有些程序(比如游戏、视频和演示文稿)在运行过程中应该阻止屏幕关闭,否则屏幕总是关闭,会导致体验会非常糟糕。 本文介绍如何编写 .NET/C# 代码临时阻止屏幕关闭以及系统进入睡眠状态。 本文内容Window...

2019-11-27 07:36:51

阅读数 56

评论数 0

提示
确定要删除当前文章?
取消 删除