Insert

NodeCollection.Insert method

Fügt einen Knoten am angegebenen Index in die Sammlung ein.

public void Insert(int index, Node node)
ParameterTypBeschreibung
indexInt32Der nullbasierte Index des Knotens. Negative Indizes sind zulässig und zeigen den Zugriff vom Ende der Liste an. Beispielsweise bedeutet -1 den letzten Knoten, -2 den vorletzten und so weiter.
nodeNodeDer einzufügende Knoten.

Ausnahmen

AusnahmeBedingung
NotSupportedExceptionDerNodeCollection ist eine „tiefe“ Sammlung.

Bemerkungen

Der Knoten wird als untergeordnetes Element in das Knotenobjekt eingefügt, aus dem die Sammlung erstellt wurde.

Wenn der Index gleich oder größer ist alsCount, der Knoten wird am Ende der Sammlung hinzugefügt.

Wenn der Index negativ ist und sein absoluter Wert größer ist alsCount, der Knoten wird am Ende der Sammlung hinzugefügt.

Wenn der einzufügende Knoten aus einem anderen Dokument erstellt wurde, sollten Sie verwenden.ImportNode um den Knoten in das aktuelle Dokument zu importieren. Der importierte Knoten kann dann in das aktuelle Dokument eingefügt werden.

Beispiele

Zeigt, wie mit einer NodeCollection gearbeitet wird.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Fügen Sie dem Dokument Text hinzu, indem Sie mithilfe eines DocumentBuilder Runs einfügen.
builder.Write("Run 1. ");
builder.Write("Run 2. ");

// Jeder Aufruf der Methode "Write" erzeugt einen neuen Run,
// die dann in der RunCollection des übergeordneten Absatzes erscheint.
RunCollection runs = doc.FirstSection.Body.FirstParagraph.Runs;

Assert.AreEqual(2, runs.Count);

// Wir können auch manuell einen Knoten in die RunCollection einfügen.
Run newRun = new Run(doc, "Run 3. ");
runs.Insert(3, newRun);

Assert.True(runs.Contains(newRun));
Assert.AreEqual("Run 1. Run 2. Run 3.", doc.GetText().Trim());

// Greifen Sie auf einzelne Läufe zu und entfernen Sie sie, um ihren Text aus dem Dokument zu entfernen.
Run run = runs[1];
runs.Remove(run);

Assert.AreEqual("Run 1. Run 3.", doc.GetText().Trim());
Assert.NotNull(run);
Assert.False(runs.Contains(run));

Siehe auch