C# 修复桌面图标间距问题

Windows在某些情况(系统文件损坏、注册表错误、驱动不兼容等)下,桌面图标间距变得超大,占满整个桌面。

整理下,C#按如下方式修复

复制代码
 1     using var windowMetrics = Registry.CurrentUser.CreateSubKey(@"Control Panel\Desktop\WindowMetrics");
 2     if (windowMetrics == null)
 3     {
 4         return;
 5     }
 6     //默认情况下,水平和垂直间距的值都是-1125。范围是-480到-2730之间的任何整数
 7     //修复后,windows重启生效
 8     if (!(windowMetrics.GetValue("IconSpacing") is string iconSpacing && iconSpacing == DefaultIconSpacing))
 9     {
10         windowMetrics.SetValue("IconSpacing", DefaultIconSpacing, RegistryValueKind.String);
11     }
12     if (!(windowMetrics.GetValue("IconVerticalSpacing") is string iconVerticalSpacing && iconVerticalSpacing == DefaultIconSpacing))
13     {
14         windowMetrics.SetValue("IconVerticalSpacing", DefaultIconSpacing, RegistryValueKind.String);
15     }
复制代码

默认的间距值:

private const string DefaultIconSpacing = "-1125";

posted @   唐宋元明清2188  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
点击右上角即可分享
微信分享提示
剑桥
16:15发布
剑桥
16:15发布
7°
西南风
3级
空气质量
相对湿度
66%
今天
2°/10°
周三
2°/8°
周四
中雨
2°/7°