typeInfo

Spécifie les informations de type d’une propriété. Il ne doit y avoir qu’un seul élément typeInfo pour chaque propertyDescription. Cet élément a changé pour Windows 7.

S’il existe plusieurs éléments, le dernier est utilisé. Si aucun élément typeInfo n’est fourni, les paramètres d’attribut par défaut sont appliqués à la description de la propriété.

Syntaxe pour 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>

Informations sur les éléments

Élément parent Éléments enfants
propertyDescription Aucun

 

Attributs

Attribut Description
type Public. facultatif. La valeur par défaut est « Any ». Indique le type de la propriété. Voici les types valides et leurs types variant associés sont récupérés par IPropertyDescription::GetPropertyType.
Valeur Signification
Quelconque Par défaut. Le sous-système de propriétés n’applique pas ou ne force pas la valeur de la propriété. IPropertyDescription::GetPropertyType retourne VT_NULL. Les éditeurs de logiciels indépendants (ISV) sont fortement encouragés à fournir un type plutôt que de revenir à cette valeur par défaut.
Null Il n’existe aucune valeur pour cette propriété. IPropertyDescription::GetPropertyType retourne VT_NULL.
String La valeur doit être un VT_LPWSTR, qui est une chaîne Unicode terminée par une référence Null.
Boolean La valeur doit être une VT_BOOL, qui est une valeur booléenne.
Byte La valeur doit être un VT_UI1, qui est un octet.
Buffer La valeur doit être une VT_UI1 | VT_VECTOR mémoire tampon d’octets.
Int16 La valeur doit être un VT_I2, qui est un entier 16 bits.
UInt16 La valeur doit être un VT_UI2, qui est un entier non signé 16 bits.
Int32 La valeur doit être un VT_I4, qui est un entier 32 bits.
UInt32 La valeur doit être un VT_UI4, qui est un entier non signé 32 bits.
Int64 La valeur doit être un VT_I8, qui est un entier 64 bits.
UInt64 La valeur doit être un VT_UI8, qui est un entier non signé 64 bits.
Double La valeur doit être une VT_R8, qui est un double.
DateTime La valeur doit être un VT_FILETIME, qui est un FILETIME.
Guid La valeur doit être un VT_CLSID, qui est un identificateur de classe (CLSID).
Objet blob La valeur doit être un VT_BLOB, qui sont des octets préfixés de longueur.
STREAM La valeur doit être une VT_STREAM, qui est un objet qui implémente IStream.
Presse-papiers La valeur doit être un VT_CF, qui est un format de Presse-papiers.
Object La valeur doit être une VT_UNKNOWN, qui est un objet qui implémente IUnknown.

 

groupingRange facultatif. La valeur par défaut est « Discrète ». Spécifie la façon dont la propriété s’affiche lorsqu’une vue est regroupée par cette propriété. Une fois définies ici, ces valeurs sont récupérées par IPropertyDescription::GetGroupingRange. Les types suivants sont valides.
Valeur Signification
Discret Par défaut. Affiche des valeurs individuelles.
Alphanumérique Affiche des plages alphanumériques statiques pour les valeurs.
Taille Affiche les plages de tailles statiques pour les valeurs.
Date Affiche les groupes mois/année. Valeur par défaut pour les propriétés de type="DateTime ».
TimeRelative Affiche les groupes relatifs dans le temps.
Dynamique Affiche des plages créées dynamiquement pour les valeurs.
Pourcentage Affiche les compartiments de pourcentage.

 

isInnate Public. facultatif. La valeur par défaut est « false ». Spécifie si la propriété est considérée comme innée. Une propriété innée est une propriété calculée à partir du contenu d’un fichier, ou d’autres ressources ou systèmes. Par exemple, System.Size est une propriété innée fournie par le système de fichiers ; la modification de la valeur de la propriété en elle-même ne fait rien. D’autres exemples sont System.Image.Dimensions et System.Document.PageCount, qui sont calculés par les programmes en fonction du contenu du fichier, et non en fonction d’un paramètre modifiable par l’utilisateur. La définition de isInnate="true » signifie que l’utilisateur ne peut pas modifier cette propriété directement via un contrôle de propriété. Cette valeur est mappée à l’indicateur PDTF_ISINNATE défini dans PROPDESC_TYPE_FLAGS et utilisé dans IPropertyDescription::GetTypeFlags.
canBePurged Windows Vista avec Service Pack 1 (SP1) et versions ultérieures uniquement. Public. facultatif. Lorsque la valeur est définie sur « true », autorise la suppression d’une propriété innée. Les propriétés innées, calculées à partir d’autres propriétés, sont en lecture seule par définition. La valeur par défaut de cet attribut dépend de la valeur isInnate .
isInnate valeur par défaut canBePurged
true false
false true

 

[! Remarque]
Propriété dont la valeur isInnate est « false » (ce qui signifie que la propriété est en lecture/écriture) ne peut pas également définir la valeur canBePurged sur « false ». Cette restriction est appliquée par le système d’exploitation.
 

Bien que cet attribut ait été introduit dans Windows Vista avec Service Pack 1 (SP1), un fichier .propdesc qui inclut cet attribut est compatible avec Windows Vista avant Windows Vista avec SP1. L’attribut canBePurged est simplement ignoré dans cette situation.

multipleValues Public. facultatif. La valeur par défaut est « false ». Spécifie si cette propriété peut avoir plusieurs valeurs. Cette valeur est mappée à l’indicateur PDTF_MULTIPLEVALUES défini dans PROPDESC_TYPE_FLAGS et utilisé dans IPropertyDescription::GetTypeFlags. Cela influence également si VT_VECTOR est OR’d à la vartype de la valeur de propriété.
isGroup Public. facultatif. La valeur par défaut est « false ». Spécifie si la propriété est un titre de groupe. Un titre de groupe est strictement utilisé dans les proplists, n’a aucune valeur, n’est jamais stocké dans un fichier et doit également avoir
Valeur Signification
Default Par défaut. Affiche un espace réservé Valeurs multiples dans l’interface utilisateur. Il s’agit de la valeur par défaut si le type est incompatible avec le aggregationType spécifié.
First Affiche la valeur de propriété du premier élément de la sélection ou de la collection.
SUM Affiche la somme des valeurs numériques. Utile pour les propriétés telles que System.Media.Duration ou System.Size. Cette valeur n’est pas compatible avec les types non numériques.
Average Affiche la moyenne des valeurs numériques. Utile pour les propriétés telles que System.Rating. Cette valeur n’est pas compatible avec les types non numériques.
DateRange Affiche une plage de dates. Utile pour les propriétés telles que System.Photo.DateTaken. Cette valeur n’est pas compatible avec n’importe quoi, à l’exception de type="DateTime » et est la valeur par défaut pour les propriétés de ce type.
Union Affiche une union de toutes les valeurs de la sélection ou de la collection. L’ordre dans lequel les valeurs sont affichées n’est pas défini. Cette valeur est la valeur par défaut pour les propriétés de type="String » et multipleValues="true ».
Maximale Affiche la valeur maximale dans la collection. Utile pour les propriétés telles que System.DateModified. Non compatible avec les types non numériques ou non-date.
Minimum Affiche la valeur minimale dans la collection. Non compatible avec les types non numériques ou non-date.

 

isTreeProperty Public. facultatif. La valeur par défaut est « false ».
isViewable Public. facultatif. La valeur par défaut est « false ». Spécifie si cette propriété est destinée à être visible pour l’utilisateur. Par exemple, l’interface utilisateur du sélecteur de colonnes affiche uniquement les propriétés qui ont isViewable="true ». L’exception est l’interface utilisateur qui est pilotée par une liste de propriétés, qui affiche toujours la propriété. Si vous disposez d’une propriété destinée uniquement à navetter des données entre deux objets et que vous n’avez jamais l’intention d’être consultée par l’utilisateur, cet attribut doit avoir la valeur false. Cette valeur est mappée à l’indicateur PDTF_ISVIEWABLE défini dans PROPDESC_TYPE_FLAGS et utilisé dans IPropertyDescription::GetTypeFlags.
isQueryable Windows Vista uniquement. Non pris en charge dans Windows 7 et versions ultérieures. Public. facultatif. La valeur par défaut est « false ». Spécifie si cette propriété est destinée à être disponible dans l’interface utilisateur du Générateur de requêtes de recherche. Une propriété doit avoir isViewable="true » avant que isQueryable="true » soit respecté. Cette valeur est mappée à l’indicateur PDTF_ISQUERYABLE défini dans PROPDESC_TYPE_FLAGS et utilisé dans IPropertyDescription::GetTypeFlags.
searchRawValue Windows 7 et versions ultérieures. Public. facultatif. La valeur par défaut est « false ».
includeInFullTextQuery Windows Vista uniquement. Non pris en charge dans Windows 7 et versions ultérieures. Public. facultatif. La valeur par défaut est « false ».
conditionType Public. facultatif. La valeur par défaut est « String ». Spécifie un indicateur de l’interface utilisateur du Générateur de requêtes de recherche afin qu’elle puisse déterminer la liste des opérateurs de condition possibles à l’intérieur d’un prédicat. Les valeurs suivantes sont reconnues.
Valeur Signification
String Par défaut. Les opérateurs suivants sont utilisés : « is », « is », « is<> », « », « <= », « >= », « commence par », « ends with », « contains », « ne contient pas », « is like ».
Number Valeur par défaut pour les propriétés numériques. Les opérateurs suivants seront utilisés : « égal », « n’est pas égal », « est inférieur à », « est supérieur à », « est inférieur ou égal à », « est inférieur ou égal à », « est supérieur ou égal à ».
DateTime Valeur par défaut pour les propriétés de type="DateTime ». Les opérateurs suivants seront utilisés : « is », « is », « is before », « is after », « is before », « is before mais includes », « is after mais inclu ».
Boolean Valeur par défaut pour les propriétés de type="Boolean ». Identique au nombre.
Taille Identique au nombre.

 

defaultOperation Public. facultatif. La valeur par défaut est « Égal ». Spécifie un indicateur à l’outil Générateur de requêtes de recherche afin qu’il puisse déterminer l’opérateur par défaut. Les valeurs possibles sont les suivantes :
Valeur Signification
Égal à Par défaut. Indique l’équivalent.
NotEqual Indique non équivalent.
LessThan Indique moins que.
GreaterThan Valeur par défaut pour les propriétés de conditionType="Size ». Indique supérieur à.
Contient Valeur par défaut pour les propriétés de conditionType="String ». Indique l’inclusion.