CustomXmlPartCollection
Inhalt
[
Ausblenden
]CustomXmlPartCollection class
Stellt eine Sammlung von benutzerdefinierten XML-Teilen dar. Die Elemente sindCustomXmlPart
Objekte.
Um mehr zu erfahren, besuchen Sie dieStrukturierte Dokument-Tags oder Inhaltssteuerung Dokumentationsartikel.
public class CustomXmlPartCollection : IEnumerable<CustomXmlPart>
Konstrukteure
Name | Beschreibung |
---|---|
CustomXmlPartCollection() | Default_Constructor |
Eigenschaften
Name | Beschreibung |
---|---|
Count { get; } | Ruft die Anzahl der in der Sammlung enthaltenen Elemente ab. |
Item { get; set; } | Ruft ein Element am angegebenen Index ab oder legt es fest. |
Methoden
Name | Beschreibung |
---|---|
Add(CustomXmlPart) | Fügt der Sammlung ein Element hinzu. |
Add(string, string) | Erstellt einen neuen XML-Teil mit dem angegebenen XML und fügt ihn der Sammlung hinzu. |
Clear() | Entfernt alle Elemente aus der Sammlung. |
Clone() | Erstellt eine vollständige Kopie dieser Sammlung und ihrer Elemente. |
GetById(string) | Sucht und gibt einen benutzerdefinierten XML-Teil anhand seiner Kennung zurück. |
GetEnumerator() | Gibt ein Enumeratorobjekt zurück, mit dem alle Elemente in der Sammlung durchlaufen werden können. |
RemoveAt(int) | Entfernt ein Element am angegebenen Index. |
Bemerkungen
Normalerweise müssen Sie keine Instanzen dieser Klasse erstellen. Sie können auf benutzerdefinierte XML-Daten zugreifen, die in einem Dokument gespeichert sind, überCustomXmlParts
Eigentum.
Beispiele
Zeigt, wie ein strukturiertes Dokument-Tag mit benutzerdefinierten XML-Daten erstellt wird.
Document doc = new Document();
// Erstellen Sie einen XML-Teil, der Daten enthält, und fügen Sie ihn der Sammlung des Dokuments hinzu.
// Wenn wir die Registerkarte "Entwickler" in Microsoft Word aktivieren,
// Wir können Elemente aus dieser Sammlung zusammen mit einigen Standardelementen im „XML-Mapping-Bereich“ finden.
string xmlPartId = Guid.NewGuid().ToString("B");
string xmlPartContent = "<root><text>Hello world!</text></root>";
CustomXmlPart xmlPart = doc.CustomXmlParts.Add(xmlPartId, xmlPartContent);
Assert.AreEqual(Encoding.ASCII.GetBytes(xmlPartContent), xmlPart.Data);
Assert.AreEqual(xmlPartId, xmlPart.Id);
// Unten sind zwei Möglichkeiten, auf XML-Teile zu verweisen.
// 1 – Durch einen Index in der benutzerdefinierten XML-Teilesammlung:
Assert.AreEqual(xmlPart, doc.CustomXmlParts[0]);
// 2 - Nach GUID:
Assert.AreEqual(xmlPart, doc.CustomXmlParts.GetById(xmlPartId));
// Eine XML-Schemazuordnung hinzufügen.
xmlPart.Schemas.Add("http://www.w3.org/2001/XMLSchema");
// Klonen Sie einen Teil und fügen Sie ihn dann in die Sammlung ein.
CustomXmlPart xmlPartClone = xmlPart.Clone();
xmlPartClone.Id = Guid.NewGuid().ToString("B");
doc.CustomXmlParts.Add(xmlPartClone);
Assert.AreEqual(2, doc.CustomXmlParts.Count);
// Durchlaufen Sie die Sammlung und drucken Sie den Inhalt jedes Teils.
using (IEnumerator<CustomXmlPart> enumerator = doc.CustomXmlParts.GetEnumerator())
{
int index = 0;
while (enumerator.MoveNext())
{
Console.WriteLine($"XML part index {index}, ID: {enumerator.Current.Id}");
Console.WriteLine($"\tContent: {Encoding.UTF8.GetString(enumerator.Current.Data)}");
index++;
}
}
// Verwenden Sie die Methode „RemoveAt“, um den geklonten Teil nach Index zu entfernen.
doc.CustomXmlParts.RemoveAt(1);
Assert.AreEqual(1, doc.CustomXmlParts.Count);
// Klonen Sie die XML-Teilesammlung und verwenden Sie dann die Methode „Clear“, um alle Elemente auf einmal zu entfernen.
CustomXmlPartCollection customXmlParts = doc.CustomXmlParts.Clone();
customXmlParts.Clear();
// Erstellen Sie ein strukturiertes Dokument-Tag, das den Inhalt unseres Teils anzeigt, und fügen Sie es in den Dokumenttext ein.
StructuredDocumentTag tag = new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Block);
tag.XmlMapping.SetMapping(xmlPart, "/root[1]/text[1]", string.Empty);
doc.FirstSection.Body.AppendChild(tag);
doc.Save(ArtifactsDir + "StructuredDocumentTag.CustomXml.docx");
Siehe auch
- class CustomXmlPart
- namensraum Aspose.Words.Markup
- Montage Aspose.Words