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>

項目資訊

Parent 項目 子元素
propertyDescription

屬性

屬性 描述
type 公用。 選擇性。 預設值為 " Any " 。 指出屬性的類型。 下列是有效的類型,且其相關聯的 variant 類型會由 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 值必須是 VT_I4,也就是32位的整數。
UInt32 值必須是 VT_UI4,也就是32位不帶正負號的整數。
Int64 值必須是 VT_I8,也就是64位的整數。
UInt64 值必須是 VT_UI8,也就是64位不帶正負號的整數。
Double 值必須是 VT_R8,也就是雙精度浮點數。
Datetime 值必須是 VT_FILETIME,也就是 FILETIME
Guid 值必須是 VT_CLSID,也就是 (CLSID) 的類別識別碼。
Blob 值必須是長度為首碼位元組的 VT_BLOB。
串流 值必須是 VT_STREAM,也就是執行 IStream的物件。
剪貼簿 值必須是 VT_CF,也就是剪貼簿格式。
Object 值必須是 VT_UNKNOWN,也就是執行 IUnknown的物件。

groupingRange 選擇性。 預設值是 " 離散的 " 。 指定當視圖依此屬性分組時,顯示內容的方式。 在這裡設定之後,這些值就會由 IPropertyDescription:: GetGroupingRange取出。 以下是有效的類型。
意義
Discrete 預設值。 顯示個別的值。
英數字元 顯示值的靜態英數位元範圍。
大小 顯示值的靜態大小範圍。
Date 顯示月份/年度群組。 Type = DateTime 之屬性的預設值 " " 。
TimeRelative 以時間相對的群組顯示。
動態 顯示動態建立的值範圍。
百分比 顯示百分比值區。

isInnate 公用。 選擇性。 預設值為 "false"。 指定屬性是否視為固有。 固有屬性是從檔案內容或從其他資源或系統進行計算的屬性。 例如,System.object 是檔案系統提供的固有屬性;變更和本身的屬性值不會執行任何動作。 其他範例為 system.string 和 System.Doc>ument。PageCount,根據檔案內容的程式來計算,而不是根據使用者變更的設定。 設定 isInnate = " true " 表示使用者無法直接透過屬性控制項來編輯此屬性。 此值會對應到 PROPDESC_TYPE_FLAGS 中所定義並在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_ISINNATE 旗標。
canBePurged Windows Vista Service Pack 1 (SP1) 和更新版本。 公用。 選擇性。 當設為 " 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 公用。 選擇性。 預設值為 "false"。 指定這個屬性是否可以有多個值。 此值會對應到 PROPDESC_TYPE_FLAGS 中所定義並在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_MULTIPLEVALUES 旗標。 這也會影響 VT_VECTOR 是否為屬性值的 VARTYPE 或。
isGroup 公用。 選擇性。 預設值為 "false"。 指定屬性是否為群組標題。 群組標題會嚴格用於 proplists 中,沒有任何值,絕對不會儲存在檔案中,也應該具有
意義
預設 預設值。 在 UI 中顯示 多個值 預留位置。 如果 類型 與指定的 aggregationType不相容,這就是預設值。
First 顯示選取專案或集合中第一個專案的屬性值。
Sum 顯示數值的總和。 適用于如 system.string 或 System. 大小等屬性。 此值與非數數值型別不相容。
平均 顯示數值的平均值。 適用于如 System. 評等的屬性。 此值與非數數值型別不相容。
DateRange 顯示日期的範圍。 適用于 DateTaken 等屬性。 這個值與 type = DateTime 以外的任何值都不相容 " " ,而且是該類型屬性的預設值。
Union 顯示選取範圍或集合中所有值的聯集。 值的顯示順序未定義。 此值是 type = " String " 和 multipleValues = true 的屬性預設值 " " 。
最大值 顯示集合中的最大值。 適用于 DateModified 之類的屬性。 與非數值或非日期類型不相容。
最小值 顯示集合中的最小值。 與非數值或非日期類型不相容。

isTreeProperty 公用。 選擇性。 預設值為 "false"。
isViewable 公用。 選擇性。 預設值為 "false"。 指定是否要向使用者查看此屬性。 例如,資料行選擇器 UI 只會顯示具有 isViewable = true 的 " 屬性 " 。 例外狀況是由 proplist 驅動的 UI,一律會顯示內容。 如果您的屬性只是要在兩個物件之間快速流覽資料,而不想讓使用者看到,則這個屬性應該是 false。 此值會對應到 PROPDESC_TYPE_FLAGS 中所定義並在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_ISVIEWABLE 旗標。
isQueryable 僅限 Windows Vista。 在 Windows 7 和更新版本中不支援。 公用。 選擇性。 預設值為 "false"。 指定是否要在搜尋查詢產生器 UI 中提供這個屬性。 在 " " 遵守 isQueryable = true 之前,屬性必須有 isViewable = true " " 。 此值會對應到 PROPDESC_TYPE_FLAGS 中所定義並在 IPropertyDescription:: GetTypeFlags中使用的 PDTF_ISQUERYABLE 旗標。
searchRawValue Windows 7 和更新版本。 公用。 選擇性。 預設值為 "false"。
includeInFullTextQuery 僅限 Windows Vista。 在 Windows 7 和更新版本中不支援。 公用。 選擇性。 預設值為 "false"。
conditionType 公用。 選擇性。 預設值是 " String " 。 指定搜尋查詢產生器 UI 的提示,讓它可以判斷述詞內可能條件運算子的清單。 以下是可辨識的值。
意義
String 預設值。 將會使用下列運算子:是,不是,,,,, " " " " " < " " > " " <= " " >= " " 開頭為 " , " 結尾為 " , " 包含 " , " 不包含 " , " 則類似 " 。
Number 數值屬性的預設值。 將會使用下列運算子: " equals " 、 " 不等於、小於、大於 " " " " " 、 " 小於或等於 " 、 " 大於或等於 " 。
Datetime Type = DateTime 之屬性的預設值 " " 。 將會使用下列運算子: " 是,不是 " " " , " 之前是 " " " " " " " ,在之後,但在中,但包含。
Boolean Type = Boolean 的屬性預設 " 值 " 。 與數位相同。
大小 與數位相同。

defaultOperation 公用。 選擇性。 預設值為 [ " 等於] " 。 指定搜尋查詢產生器工具的提示,讓它可以判斷預設運算子。 可能的值如下:
意義
等於 預設值。 表示對等專案。
NotEqual 表示不相等。
LessThan 表示小於。
GreaterThan ConditionType = Size 的屬性預設 " 值 " 。 表示大於。
包含 ConditionType = String 的屬性預設 " 值 " 。 表示包含。