Typeinfo

Specifica le informazioni sul tipo di una proprietà. Per ogni proprietàDescription deve essere presente un solo elemento typeInfo. Questo elemento è stato modificato per Windows 7.

Se sono presenti più elementi, viene usata l'ultima. Se non viene specificato alcun elemento typeInfo , le impostazioni predefinite dell'attributo vengono applicate alla descrizione della proprietà.

Sintassi per 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>

Informazioni sull'elemento

Elemento padre Elementi figlio
propertyDescription Nessuno

 

Attributi

Attributo Descrizione
type Pubblica. facoltativo. Il valore predefinito è "Any". Indica il tipo della proprietà. Di seguito sono riportati tipi validi e i tipi varianti associati vengono recuperati da IPropertyDescription::GetPropertyType.
Valore Significato
Qualsiasi Valore predefinito. Il sottosistema di proprietà non impone o coece il valore della proprietà. IPropertyDescription::GetPropertyType restituisce VT_NULL. I fornitori di software indipendenti (ISV) sono fortemente invitati a fornire un tipo anziché eseguire il fallback su questo valore predefinito.
Null Non esiste alcun valore per questa proprietà. IPropertyDescription::GetPropertyType restituisce VT_NULL.
Stringa Il valore deve essere un VT_LPWSTR, ovvero una stringa Unicode terminata da un riferimento Null.
Boolean Il valore deve essere un VT_BOOL, ovvero un valore booleano.
Byte Il valore deve essere un VT_UI1, ovvero un byte.
Buffer Il valore deve essere un VT_UI1 | VT_VECTOR buffer di byte.
Int16 Il valore deve essere un VT_I2, ovvero un numero intero a 16 bit.
UInt16 Il valore deve essere un VT_UI2, ovvero un intero senza segno a 16 bit.
Int32 Il valore deve essere un VT_I4, ovvero un intero a 32 bit.
UInt32 Il valore deve essere un VT_UI4, ovvero un intero senza segno a 32 bit.
Int64 Il valore deve essere un VT_I8, ovvero un intero a 64 bit.
UInt64 Il valore deve essere un VT_UI8, ovvero un intero senza segno a 64 bit.
Double Il valore deve essere un VT_R8, che è un valore double.
Datetime Il valore deve essere un VT_FILETIME, che è un file FILETIME.
Guid Il valore deve essere un VT_CLSID, ovvero un identificatore di classe (CLSID).
BLOB Il valore deve essere un VT_BLOB, ovvero byte con prefisso di lunghezza.
Stream Il valore deve essere un VT_STREAM, ovvero un oggetto che implementa IStream.
Appunti Il valore deve essere un VT_CF, ovvero un formato degli Appunti.
Oggetto Il valore deve essere un VT_UNKNOWN, ovvero un oggetto che implementa IUnknown.

 

groupingRange facoltativo. Il valore predefinito è "Discrete". Specifica la modalità di visualizzazione della proprietà quando una visualizzazione viene raggruppata in base a questa proprietà. Una volta impostati qui, questi valori vengono recuperati da IPropertyDescription::GetGroupingRange. Di seguito sono riportati i tipi validi.
Valore Significato
Discrete Valore predefinito. Visualizza i singoli valori.
Alfanumerico Visualizza gli intervalli alfanumerici statici per i valori.
Dimensione Visualizza gli intervalli di dimensioni statiche per i valori.
Data Visualizza i gruppi di mese/anno. Impostazione predefinita per le proprietà type="DateTime".
TimeRelative Viene visualizzato in gruppi relativi al tempo.
Dynamic Visualizza gli intervalli creati dinamicamente per i valori.
Percentuale Visualizza i bucket percentuale.

 

isInnate Pubblica. facoltativo. Il valore predefinito è "false". Specifica se la proprietà viene considerata innata. Una proprietà innata è una che viene calcolata dal contenuto di un file o da altre risorse o sistemi. Ad esempio, System.Size è una proprietà innata fornita dal file system; la modifica del valore della proprietà in e di se stessa non esegue alcuna operazione. Altri esempi sono System.Image.Dimensions e System.Document.PageCount, calcolati dai programmi in base al contenuto del file, non in base a un'impostazione modificabile dall'utente. L'impostazione di isInnate="true" indica che l'utente non può modificare questa proprietà direttamente tramite un controllo proprietà. Questo valore esegue il mapping al flag PDTF_ISINNATE definito in PROPDESC_TYPE_FLAGS e usato in IPropertyDescription::GetTypeFlags.
canBePurged Solo Windows Vista con Service Pack 1 (SP1) e versioni successive. Pubblica. facoltativo. Se impostato su "true", consente l'eliminazione di una proprietà innata. Le proprietà innate, calcolate da altre proprietà, sono di sola lettura per definizione. Il valore predefinito per questo attributo dipende dal valore isInnate .
isInnate valore predefinito canBePurged
true false
false true

 

Nota:
Una proprietà il cui valore isInnate è "false" (vale a dire che la proprietà è di lettura/scrittura) non può anche impostare il valore canBePurged su "false". Questa restrizione viene applicata dal sistema operativo.

 

Anche se questo attributo è stato introdotto in Windows Vista con Service Pack 1 (SP1), un file con estensione propdesc che include questo attributo è compatibile con Windows Vista prima di Windows Vista con SP1. L'attributo canBePurged viene semplicemente ignorato in tale situazione.

multipleValues Pubblica. facoltativo. Il valore predefinito è "false". Specifica se questa proprietà può avere più valori. Questo valore viene mappato al flag PDTF_MULTIPLEVALUES definito in PROPDESC_TYPE_FLAGS e usato in IPropertyDescription::GetTypeFlags. Ciò influisce anche sul fatto che VT_VECTOR sia OR per VARTYPE del valore della proprietà.
isGroup Pubblica. facoltativo. Il valore predefinito è "false". Specifica se la proprietà è un'intestazione di gruppo. Un'intestazione di gruppo viene utilizzata rigorosamente in proplist, non ha alcun valore, non viene mai archiviata in un file e deve avere <anche typeInfo type="Null">. Alcune interfacce utente del sistema usano proplist per indicare la sequenza delle proprietà da visualizzare. Questi elenchi di proprietà possono includere riferimenti a intestazioni di gruppo (ad esempio System.PropGroup.Camera), che indicano all'interfaccia utente di avviare una nuova sezione di gruppo (ad esempio, "Impostazioni fotocamera"). Una descrizione della proprietà con isGroup="true" deve specificare un'etichetta <labelInfo="Alcune etichette localizzate">; in caso contrario, non è una proprietà utile. Questo valore viene mappato al flag PDTF_ISGROUP definito in PROPDESC_TYPE_FLAGS e usato in IPropertyDescription::GetTypeFlags.
aggregationType Pubblica. facoltativo. Il valore predefinito è "Default". Specifica la modalità di visualizzazione delle proprietà di aggregazione quando vengono selezionati più elementi. Una volta impostati qui, questi valori vengono recuperati da IPropertyDescription::GetAggregationType come PROPDESC_AGGREGATION_TYPE. Di seguito sono riportati i tipi validi.
valore Significato
Predefinito Valore predefinito. Visualizza un segnaposto Multiple Values nell'interfaccia utente. Si tratta dell'impostazione predefinita se il tipo non è compatibile con il tipo aggregationType specificato.
First (Primo) Visualizza il valore della proprietà del primo elemento nella selezione o nell'insieme.
Sum Visualizza la somma dei valori numerici. Utile per proprietà quali System.Media.Duration o System.Size. Questo valore non è compatibile con i tipi non numerici.
Media Visualizza la media dei valori numerici. Utile per proprietà come System.Rating. Questo valore non è compatibile con i tipi non numerici.
DateRange Visualizza un intervallo di date. Utile per proprietà come System.Photo.DateTaken. Questo valore non è compatibile con alcun elemento tranne type="DateTime" ed è l'impostazione predefinita per le proprietà di quel tipo.
Union Visualizza un'unione di tutti i valori nella selezione o nell'insieme. L'ordine in cui vengono visualizzati i valori non è definito. Questo valore è l'impostazione predefinita per le proprietà di type="String" e multipleValues="true".
Massimo Visualizza il valore massimo nella raccolta. Utile per proprietà come System.DateModified. Non compatibile con tipi non numerici o non di data.
Minima Visualizza il valore minimo nella raccolta. Non compatibile con tipi non numerici o non di data.

 

isTreeProperty Pubblica. facoltativo. Il valore predefinito è "false".
isViewable Pubblica. facoltativo. Il valore predefinito è "false". Specifica se questa proprietà deve essere visualizzabile per l'utente. Ad esempio, l'interfaccia utente di Selezione colonna mostra solo le proprietà con isViewable="true". L'eccezione è costituita dall'interfaccia utente guidata da un oggetto proplist, che mostrerà sempre la proprietà . Se si dispone di una proprietà progettata solo per lo shuttle dei dati tra due oggetti e non si intende mai essere visualizzati dall'utente, questo attributo deve essere false. Questo valore viene mappato al flag PDTF_ISVIEWABLE definito in PROPDESC_TYPE_FLAGS e usato in IPropertyDescription::GetTypeFlags.
isQueryable Solo Windows Vista. Non supportato in Windows 7 e versioni successive. Pubblica. facoltativo. Il valore predefinito è "false". Specifica se questa proprietà deve essere disponibile nell'interfaccia utente di Generatore query di ricerca. Una proprietà deve avere isViewable="true" prima che isQueryable="true" venga rispettata. Questo valore viene mappato al flag PDTF_ISQUERYABLE definito in PROPDESC_TYPE_FLAGS e usato in IPropertyDescription::GetTypeFlags.
searchRawValue Windows 7 e versioni successive. Pubblica. facoltativo. Il valore predefinito è "false".
includeInFullTextQuery Solo Windows Vista. Non supportato in Windows 7 e versioni successive. Pubblica. facoltativo. Il valore predefinito è "false".
conditionType Pubblica. facoltativo. Il valore predefinito è "String". Specifica un hint per l'interfaccia utente di Search Query Builder in modo che possa determinare l'elenco di possibili operatori di condizione all'interno di un predicato. Di seguito sono riportati valori riconosciuti.
valore Significato
Stringa Valore predefinito. Gli operatori seguenti verranno usati: "is", "is", "is", "",> "<<=", ">=", "inizia con", "termina con", "contiene", "non contiene", "è simile".
Number Impostazione predefinita per le proprietà numeriche. Gli operatori seguenti verranno usati: "uguale", "non uguale", "è minore di", "è minore o uguale a", "è maggiore o uguale a".
Datetime Impostazione predefinita per le proprietà type="DateTime". Gli operatori seguenti verranno usati: "is", "is", "is not", "is before", "is after", "is before but include", "is after ma include".
Boolean Impostazione predefinita per le proprietà type="Boolean". Uguale a Numero.
Dimensione Uguale a Numero.

 

defaultOperation Pubblica. facoltativo. Il valore predefinito è "Equal". Specifica un hint per lo strumento Search Query Builder in modo che possa determinare l'operatore predefinito. I valori possibili sono i seguenti:
valore Significato
Uguale a Valore predefinito. Indica l'equivalente.
NotEqual Indica non equivalente.
LessThan Indica meno di.
GreaterThan Impostazione predefinita per le proprietà conditionType="Size". Indica maggiore di .
Contiene Impostazione predefinita per le proprietà conditionType="String". Indica l'inclusione.