如何采用谓词选择模型

必须为谓词设置注册表值,以处理用户可以选择单个项、多个项或从项中进行选择的情况。 对于谓词支持的这三种情况,谓词都需要单独的注册表值。

Instructions

为所有谓词指定 MultiSelectModel 值。 如果未指定 MultiSelectModel 值,则从所选谓词实现的类型推断出来。 对于基于 COM 的方法, (如 DropTarget 和 ExecuteCommand) Player ,对于其他方法,则假定 使用 Document

谓词选择模型的可能值如下所示:

  1. 为仅支持单选的动词指定 Single。
  2. 为支持任意数量的项的动词指定 Player
  3. 为为每个项目创建顶级窗口的谓词指定 Document 。 这样做会限制激活的项数,并有助于避免在用户打开过多窗口时耗尽系统资源。

备注

当所选项数与谓词选择模型不匹配或大于下表中列出的默认限制时,该谓词将无法显示。

谓词实现的类型 文档 播放器
旧的 15 个项目 100 个项目
COM 15 个项目 无限制

 

下面是使用 MultiSelectModel 值的示例注册表项。

HKEY_CLASSES_ROOT
   Folder
      shell
         open
             = MultiSelectModel = Document
HKEY_CLASSES_ROOT
   ProgID
      shell
         verb
             = MultiSelectModel = Single | Document | Player