DocumentPropertyCollection

DocumentPropertyCollection class

Classe de base pourBuiltInDocumentProperties etCustomDocumentProperties collections.

Pour en savoir plus, visitez leTravailler avec les propriétés du document article documentaire.

public abstract class DocumentPropertyCollection : IEnumerable<DocumentProperty>

Propriétés

NomLa description
Count { get; }Obtient le nombre d’éléments dans la collection.
Item { get; }Renvoie unDocumentProperty objet par index.
virtual Item { get; }Renvoie unDocumentProperty objet par le nom de la propriété.

Méthodes

NomLa description
Clear()Supprime toutes les propriétés de la collection.
Contains(string)Retoursvrai si une propriété avec le nom spécifié existe dans la collection.
GetEnumerator()Renvoie un objet énumérateur qui peut être utilisé pour parcourir tous les éléments de la collection.
IndexOf(string)Obtient l’index d’une propriété par nom.
Remove(string)Supprime une propriété portant le nom spécifié de la collection.
RemoveAt(int)Supprime une propriété à l’index spécifié.

Remarques

Les noms des propriétés ne sont pas sensibles à la casse.

Les propriétés de la collection sont triées par ordre alphabétique de nom.

Exemples

Montre comment utiliser les propriétés personnalisées d’un document.

Document doc = new Document();
CustomDocumentProperties properties = doc.CustomDocumentProperties;

Assert.AreEqual(0, properties.Count);

// Les propriétés du document personnalisé sont des paires clé-valeur que nous pouvons ajouter au document.
properties.Add("Authorized", true);
properties.Add("Authorized By", "John Doe");
properties.Add("Authorized Date", DateTime.Today);
properties.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber);
properties.Add("Authorized Amount", 123.45);

// La collection trie les propriétés personnalisées par ordre alphabétique.
Assert.AreEqual(1, properties.IndexOf("Authorized Amount"));
Assert.AreEqual(5, properties.Count);

// Imprime chaque propriété personnalisée du document.
using (IEnumerator<DocumentProperty> enumerator = properties.GetEnumerator())
{
    while (enumerator.MoveNext())
        Console.WriteLine($"Name: \"{enumerator.Current.Name}\"\n\tType: \"{enumerator.Current.Type}\"\n\tValue: \"{enumerator.Current.Value}\"");
}

// Affiche la valeur d'une propriété personnalisée à l'aide d'un champ DOCPROPERTY.
DocumentBuilder builder = new DocumentBuilder(doc);
FieldDocProperty field = (FieldDocProperty)builder.InsertField(" DOCPROPERTY \"Authorized By\"");
field.Update();

Assert.AreEqual("John Doe", field.Result);

// Nous pouvons retrouver ces propriétés personnalisées dans Microsoft Word via "Fichier" -> "Propriétés" > "Propriétés avancées" > "Coutume".
doc.Save(ArtifactsDir + "DocumentProperties.DocumentPropertyCollection.docx");

// Vous trouverez ci-dessous trois manières de supprimer les propriétés personnalisées d'un document.
// 1 - Supprimer par index :
properties.RemoveAt(1);

Assert.False(properties.Contains("Authorized Amount"));
Assert.AreEqual(4, properties.Count);

// 2 - Supprimer par nom :
properties.Remove("Authorized Revision");

Assert.False(properties.Contains("Authorized Revision"));
Assert.AreEqual(3, properties.Count);

// 3 - Vider toute la collection d'un coup :
properties.Clear();

Assert.AreEqual(0, properties.Count);

Voir également