You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Windows文件资源管理器默认显示自定义文件属性列

让Windows文件资源管理器默认显示同步根目录的自定义属性列

问题背景

在Windows 10系统中,已通过StorageProviderSyncRootInfo创建同步目录,并完成自定义属性的注册,但这些自定义属性列仅能通过用户手动在文件资源管理器的「更多」选项中选择才会显示,需要设置为默认自动显示。

当前注册自定义属性的代码如下:

public static void RegisterCustomStates(StorageProviderSyncRootInfo syncRootInfo)
{
    var definitions = syncRootInfo.StorageProviderItemPropertyDefinitions;

    foreach (var state in CustomState.Values)
    {
        var def = new StorageProviderItemPropertyDefinition
        {
            DisplayNameResource = state.Name,
            Id = state.Id
        };

        if (!definitions.Contains(def)) 
           definitions.Add(def);
    }
}

public class CustomState
{
    public static readonly CustomState SyncStatus = new(1, "Status", "shell32.dll,-259");
    public static readonly CustomState CheckOutFlag = new(2, "CheckOut", "shell32.dll,-259");

    public static IEnumerable<CustomState> Values
    {
        get
        {
            yield return SyncStatus;
            yield return CheckOutFlag;
        }
    }

    #region definitions

    public int Id { get; }
    public string Name { get; }
    public string IconResource { get; }

    private CustomState(int id, string name, string iconResource)
    {
        Id = id;
        Name = name;
        IconResource = iconResource;
    }

    #endregion
}

解决方案

针对Windows 10 1809及以上版本(推荐)

从Windows 10 1809开始,StorageProviderItemPropertyDefinition类新增了IsShownByDefault属性,只需将该属性设置为true,即可让自定义属性列默认显示在文件资源管理器中。

修改后的注册代码如下:

public static void RegisterCustomStates(StorageProviderSyncRootInfo syncRootInfo)
{
    var definitions = syncRootInfo.StorageProviderItemPropertyDefinitions;

    foreach (var state in CustomState.Values)
    {
        var def = new StorageProviderItemPropertyDefinition
        {
            DisplayNameResource = state.Name,
            Id = state.Id,
            IsShownByDefault = true // 新增:设置列默认显示
        };

        if (!definitions.Contains(def)) 
           definitions.Add(def);
    }
}

修改完成后,重新注册同步根目录,设置即可生效。

针对Windows 10 1809以下版本

如果需兼容更早的Windows 10版本,可通过以下步骤手动配置默认视图:

  1. 打开目标同步目录,在文件资源管理器中添加需要默认显示的自定义属性列;
  2. 右键空白区域 → 「查看」→ 「选项」→ 「更改文件夹和搜索选项」;
  3. 切换到「查看」标签页,点击「应用到文件夹」,确认后即可让所有同类型的文件夹默认显示这些列。

也可以通过导出注册表配置的方式批量部署:

  • 配置好视图后,导出HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Streams\Defaults下对应文件夹模板的注册表项;
  • 将导出的注册表文件部署到目标用户机器上执行导入。

内容的提问来源于stack exchange,提问作者Keven Albert

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 06:14:56