typeInfo

指定属性的类型信息。 每个propertyDescription应只有一个typeInfo元素。 此元素已更改为 Windows 7。

如果有多个元素,则使用最后一个元素。 如果未 提供 typeInfo 元素,则默认属性设置将应用于属性说明。

Windows 7 的语法

<!-- typeInfo for Windows 7-->
<xs:element name="typeInfo">
    <xs:complexType>
        <xs:attribute name="type" default="Any">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="Any"/>
                    <xs:enumeration value="Null"/>
                    <xs:enumeration value="String"/>
                    <xs:enumeration value="Boolean"/>
                    <xs:enumeration value="Byte"/>
                    <xs:enumeration value="Buffer"/>
                    <xs:enumeration value="Int16"/>
                    <xs:enumeration value="UInt16"/>
                    <xs:enumeration value="Int32"/>
                    <xs:enumeration value="UInt32"/>
                    <xs:enumeration value="Int64"/>
                    <xs:enumeration value="UInt64"/>
                    <xs:enumeration value="Double"/>
                    <xs:enumeration value="DateTime"/>
                    <xs:enumeration value="Guid"/>
                    <xs:enumeration value="Blob"/>
                    <xs:enumeration value="Stream"/>
                    <xs:enumeration value="Clipboard"/>
                    <xs:enumeration value="Object"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="groupingRange">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="Discrete"/>
                    <xs:enumeration value="Alphanumeric"/>
                    <xs:enumeration value="Size"/>
                    <xs:enumeration value="Date"/>
                    <xs:enumeration value="Dynamic"/>
                    <xs:enumeration value="Percent"/>
                    <xs:enumeration value="Enumerated"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="isInnate" type="xs:boolean" default="false"/>
        <xs:attribute name="canBePurged" type="xs:boolean"/>
        <xs:attribute name="multipleValues" type="xs:boolean" default="false"/>
        <xs:attribute name="isGroup" type="xs:boolean" default="false"/>
        <xs:attribute name="aggregationType">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="Default"/>
                    <xs:enumeration value="First"/>
                    <xs:enumeration value="Sum"/>
                    <xs:enumeration value="Average"/>
                    <xs:enumeration value="DateRange"/>
                    <xs:enumeration value="Union"/>
                    <xs:enumeration value="Maximum"/>
                    <xs:enumeration value="Minimum"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="isTreeProperty" type="xs:boolean" default="false"/>
        <xs:attribute name="isViewable" type="xs:boolean" default="false"/>
        <xs:attribute name="isQueryable" type="xs:boolean" default="false"/>
        <xs:attribute name="includeInFullTextQuery" type="xs:boolean" default="false"/>
        <xs:attribute name="searchRawValue" type="xs:boolean" default="false"/>
        <xs:attribute name="conditionType">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="None"/>
                    <xs:enumeration value="String"/>
                    <xs:enumeration value="Number"/>
                    <xs:enumeration value="DateTime"/>
                    <xs:enumeration value="Boolean"/>
                    <xs:enumeration value="Size"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
        <xs:attribute name="defaultOperation">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:enumeration value="Equal"/>
                    <xs:enumeration value="NotEqual"/>
                    <xs:enumeration value="LessThan"/>
                    <xs:enumeration value="GreaterThan"/>
                    <xs:enumeration value="Contains"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:attribute>
    </xs:complexType>
</xs:element>

元素信息

父元素 子元素
propertyDescription

特性

特性 说明
type Public。 可选。 默认值为 " "任何 " "。 指示属性的类型。 以下是有效类型,其关联的变体类型由 IPropertyDescription::GetPropertyType 检索
含义
任意 默认。 属性子系统不会强制或强制属性值。 IPropertyDescription::GetPropertyType 返回VT_NULL。 强烈建议独立软件 (ISV) 提供类型,而不是回退到此默认值。
Null 此属性没有值。 IPropertyDescription::GetPropertyType 返回VT_NULL。
String 该值必须是一个VT_LPWSTR,它是由 null 引用终止的 Unicode 字符串。
Boolean 该值必须是一个VT_BOOL布尔值。
Byte 该值必须是一个VT_UI1字节。
Buffer 该值必须是一个VT_UI1 |VT_VECTOR字节的缓冲区。
Int16 该值必须是一个VT_I2,即 16 位整数。
UInt16 该值必须是一个VT_UI2,它是一个 16 位无符号整数。
Int32 该值必须是 32 VT_I4整数的整数。
UInt32 该值必须是一个VT_UI4,即 32 位无符号整数。
Int64 该值必须是 64 VT_I8整数的整数。
UInt64 该值必须是 64 VT_UI8无符号整数的整数。
Double 该值必须是一个VT_R8,这是一个双精度值。
DateTime 该值必须是一个VT_FILETIME,即 FILETIME
Guid 该值必须是一个VT_CLSID,它是 CLSID (类) 。
Blob 该值必须是以VT_BLOB为前缀的字节的字符串。
Stream 该值必须是一个VT_STREAM,它是实现 IStream 的对象
剪贴板 该值必须是一个VT_CF,这是剪贴板格式。
对象 该值必须是一个VT_UNKNOWN,它是实现 IUnknown 的对象

groupingRange 可选。 默认值为 " 离散 " 。 指定按此属性对视图进行分组时属性的显示方式。 在此处设置后,这些值由 IPropertyDescription::GetGroupingRange 检索。 以下是有效类型。
含义
离散 默认。 显示单个值。
字母数字 显示值的静态字母数字范围。
大小 显示值的静态大小范围。
Date 显示月份/年份组。 类型为 " DateTime 的属性的默认值 " 。
TimeRelative 在时间相对组中显示。
动态 显示动态创建的值范围。
百分比 显示百分比存储桶。

isInnate Public。 可选。 默认值为 "false"。 指定是否将属性视为"已内生"。 "内部"属性是根据文件内容或其他资源或系统计算得出的属性。 例如,System.Size 是文件系统提供的一个内部属性;更改 和 中 属性的值本身不执行任何操作。 其他示例包括 System.Image.Dimensions 和 System.Document。PageCount,由程序根据文件内容计算,而不是基于用户可更改的设置计算。 设置 isInnate= " true " 表示用户无法通过属性控件直接编辑此属性。 此值映射到在 PROPDESC_TYPE_FLAGS 中定义并在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_ISINNATE 标志。
canBePurged 仅 Windows Vista Service Pack 1 (SP1) 和更高版本。 Public。 可选。 如果设置为 " true " ,则允许删除原始属性。 从其他属性计算的原始属性由定义为只读。 此属性的默认值取决于 isInnate 值。
isInnate canBePurged 默认值
true false
false true

[!Note]
isInnate 值为 false 的 " 属性 " (意味着该属性是可读/写的) 也不能将 canBePurged 值设置为 " false " 。 此限制由操作系统强制执行。

尽管此属性是在 Windows vista Service Pack 1 (SP1) 中引入的,但包含此属性的 propdesc 文件与 Windows vista SP1 之前的 Windows Vista 兼容。 在这种情况下,只会忽略 canBePurged 属性。

multipleValues Public。 可选。 默认值为 "false"。 指定此属性是否可以具有多个值。 此值映射到在 PROPDESC_TYPE_FLAGS 中定义并在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_MULTIPLEVALUES 标志。 这还会影响 VT_VECTOR 是否为属性值的 VARTYPE。
isGroup Public。 可选。 默认值为 "false"。 指定属性是否为组标题。 组标题严格用于 proplists 中,没有任何值,永远不会存储在文件中,还应具有
含义
默认 默认。 在 UI 中显示 多个值 占位符。 如果该 类型 与指定的 aggregationType不兼容,则这是默认值。
First 显示选定内容或集合中第一项的属性值。
Sum 显示数值的和。 对于诸如 System.object 或系统大小之类的属性很有用。 此值与非数值类型不兼容。
平均值 显示数值的平均值。 对于诸如 "分级" 之类的属性很有用。 此值与非数值类型不兼容。
DateRange 显示日期范围。 对于 DateTaken 之类的属性很有用。 此值与除 type = DateTime 之外的任何内容不兼容 " " ,并且是该类型的属性的默认值。
Union 显示选定内容或集合中所有值的并集。 值的显示顺序是不确定的。 此值是类型 = " String " 和 multipleValues = true 的属性的默认 " 值 " 。
最大值 显示集合中的最大值。 对于 DateModified 之类的属性很有用。 不与非数值类型或非日期类型兼容。
最小值 显示集合中的最小值。 不与非数值类型或非日期类型兼容。

isTreeProperty Public。 可选。 默认值为“false”""。
isViewable Public。 可选。 默认值为“false”""。 指定此属性是否可供用户查看。 例如,列选择器 UI 只显示具有 isViewable = true 的属性 " " 。 异常是由 proplist 驱动的 UI,它将始终显示属性。 如果某个属性仅用于在两个对象之间快速导航数据,而不希望用户查看此属性,则此属性应为 false。 此值映射到在 PROPDESC_TYPE_FLAGS 中定义并在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_ISVIEWABLE 标志。
isQueryable Windows仅限 Vista。 在 Windows 7 及更高版本中不受支持。 Public。 可选。 默认值为“false”""。 指定是否应在搜索查询生成器 UI 中使用此属性。 在 " " 遵从 isQueryable = true 之前,属性必须具有 isViewable = true " " 。 此值映射到在 PROPDESC_TYPE_FLAGS 中定义并在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_ISQUERYABLE 标志。
searchRawValue Windows 7 及更高版本。 Public。 可选。 默认值为“false”""。
includeInFullTextQuery Windows仅 Vista。 在 Windows 7 及更高版本中不受支持。 Public。 可选。 默认值为“false”""。
conditionType Public。 可选。 默认值为 " String " 。 指定对 Search 查询生成器 UI 的提示,以便它可以确定谓词内可能的条件运算符的列表。 以下是已识别的值。
含义
字符串 默认。 将使用以下运算符:、 不是 、以 开头、以 结尾、包含 、不包含 、 " " " " " < " " > " " <= " " >= " " 与 " " " " " " " " 类似 " 。
Number 数值属性的默认值。 将使用以下运算符:等于、不等于、小于、大于、小于或等于、 " " " " " " " " " " " 大于或等于 " 。
DateTime 类型为 " DateTime 的属性的默认值 " 。 将使用以下运算符 " :、 " " " " " " " " " " "
Boolean 类型为 " Boolean 的属性的默认值 " 。 与数字相同。
大小 与数字相同。

defaultOperation Public。 可选。 默认值为 " Equal " 。 指定 Search 查询生成器工具的提示,以便它可以确定默认运算符。 可能的值如下:
含义
等于 默认。 指示等效项。
NotEqual 指示不等效。
LessThan 指示小于 。
GreaterThan conditionType= Size " 的属性的默认值 " 。 指示大于 。
Contains conditionType= String 的属性 " 的默认值 " 。 指示包含。