CustomPart

CustomPart class

Représente une partie personnalisée (contenu arbitraire), qui n’est pas définie par la norme ISO/IEC 29500.

Pour en savoir plus, visitez leBalises de documents structurés ou contrôle de contenu article documentaire.

public class CustomPart

Constructeurs

NomLa description
CustomPart()Default_Constructor

Propriétés

NomLa description
ContentType { get; set; }Spécifie le type de contenu de cette pièce personnalisée.
Data { get; set; }Contient les données de cette pièce personnalisée.
IsExternal { get; set; }False si cette partie personnalisée est stockée dans le package OOXML. Vrai si cette pièce personnalisée est une cible externe.
Name { get; set; }Obtient ou définit le nom absolu de cette partie dans le package OOXML ou l’URL cible.
RelationshipType { get; set; }Obtient ou définit le type de relation de la pièce parent vers cette pièce personnalisée.

Méthodes

NomLa description
Clone()Crée une copie “suffisamment profonde” de l’objet. Ne duplique pas les octets duData valeur.

Remarques

Cette classe représente une partie OOXML qui est la cible d’une « relation inconnue ». Toutes les relations non définies dans la norme ISO/IEC 29500 sont considérées comme des « relations inconnues ». Les relations inconnues sont autorisées dans un document Office Open XML à condition qu’elles soient conformes. aux directives de balisage des relations.

Microsoft Word conserve les pièces personnalisées pendant les cycles d’ouverture/d’enregistrement. Certaines informations supplémentaires peuvent être trouvées ici http://blogs.msdn.com/dmahugh/archive/2006/11/25/arbitrary-content-in-an-opc-package.aspx

Aspose.Words effectue également des allers-retours avec les pièces personnalisées et permet en outre d’accéder par programme à à ces pièces via leCustomPart etCustomPartCollection objets.

Ne confondez pas les parties personnalisées avec les données XML personnalisées. UtiliserCustomXmlPart si vous avez besoin de pour accéder aux données XML personnalisées.

Exemples

Montre comment accéder à la collection de pièces personnalisées arbitraires d’un document.

Document doc = new Document(MyDir + "Custom parts OOXML package.docx");

Assert.AreEqual(2, doc.PackageCustomParts.Count);

// Clonez la deuxième partie, puis ajoutez le clone à la collection.
CustomPart clonedPart = doc.PackageCustomParts[1].Clone();
doc.PackageCustomParts.Add(clonedPart);
Assert.AreEqual(3, doc.PackageCustomParts.Count);

// Énumère la collection et imprime chaque partie.
using (IEnumerator<CustomPart> enumerator = doc.PackageCustomParts.GetEnumerator())
{
    int index = 0;
    while (enumerator.MoveNext())
    {
        Console.WriteLine($"Part index {index}:");
        Console.WriteLine($"\tName:\t\t\t\t{enumerator.Current.Name}");
        Console.WriteLine($"\tContent type:\t\t{enumerator.Current.ContentType}");
        Console.WriteLine($"\tRelationship type:\t{enumerator.Current.RelationshipType}");
        Console.WriteLine(enumerator.Current.IsExternal ?
            "\tSourced from outside the document" :
            $"\tStored within the document, length: {enumerator.Current.Data.Length} bytes");
        index++;
    }
}

// Nous pouvons supprimer des éléments de cette collection individuellement ou tous en même temps.
doc.PackageCustomParts.RemoveAt(2);

Assert.AreEqual(2, doc.PackageCustomParts.Count);

doc.PackageCustomParts.Clear();

Assert.AreEqual(0, doc.PackageCustomParts.Count);

Voir également