VariableCollection

VariableCollection class

Eine Sammlung von Dokumentvariablen.

Um mehr zu erfahren, besuchen Sie dieArbeiten Sie mit Dokumenteigenschaften Dokumentationsartikel.

public class VariableCollection : IEnumerable<KeyValuePair<string, string>>

Eigenschaften

NameBeschreibung
Count { get; }Ruft die Anzahl der in der Sammlung enthaltenen Elemente ab.
Item { get; set; }Ruft eine Dokumentvariable ab oder legt sie fest, wobei die Groß-/Kleinschreibung nicht berücksichtigt wird. Null Werte sind auf der rechten Seite der Zuweisung nicht zulässig und werden durch eine leere Zeichenfolge ersetzt. (2 indexers)

Methoden

NameBeschreibung
Add(string, string)Fügt der Sammlung eine Dokumentvariable hinzu.
Clear()Entfernt alle Elemente aus der Sammlung.
Contains(string)Ermittelt, ob die Sammlung eine Dokumentvariable mit dem angegebenen Namen enthält.
GetEnumerator()Gibt ein Enumeratorobjekt zurück, das zum Durchlaufen aller Variablen in der Sammlung verwendet werden kann.
IndexOfKey(string)Gibt den nullbasierten Index der angegebenen Dokumentvariablen in der Sammlung zurück.
Remove(string)Entfernt eine Dokumentvariable mit dem angegebenen Namen aus der Sammlung.
RemoveAt(int)Entfernt eine Dokumentvariable am angegebenen Index.

Bemerkungen

Variablennamen und -werte sind Zeichenfolgen.

Bei Variablennamen wird die Groß-/Kleinschreibung nicht beachtet.

Beispiele

Zeigt, wie mit der Variablensammlung eines Dokuments gearbeitet wird.

Document doc = new Document();
VariableCollection variables = doc.Variables;

// Jedes Dokument verfügt über eine Sammlung von Schlüssel/Wert-Paarvariablen, zu denen wir Elemente hinzufügen können.
variables.Add("Home address", "123 Main St.");
variables.Add("City", "London");
variables.Add("Bedrooms", "3");

Assert.AreEqual(3, variables.Count);

// Wir können die Werte von Variablen im Dokumentkörper mithilfe von DOCVARIABLE-Feldern anzeigen.
DocumentBuilder builder = new DocumentBuilder(doc);
FieldDocVariable field = (FieldDocVariable)builder.InsertField(FieldType.FieldDocVariable, true);
field.VariableName = "Home address";
field.Update();

Assert.AreEqual("123 Main St.", field.Result);

// Durch Zuweisen von Werten zu vorhandenen Schlüsseln werden diese aktualisiert.
variables.Add("Home address", "456 Queen St.");

// Wir müssen dann die DOCVARIABLE-Felder aktualisieren, um sicherzustellen, dass sie einen aktuellen Wert anzeigen.
Assert.AreEqual("123 Main St.", field.Result);

field.Update();

Assert.AreEqual("456 Queen St.", field.Result);

// Überprüfen Sie, ob die Dokumentvariablen mit einem bestimmten Namen oder Wert vorhanden sind.
Assert.True(variables.Contains("City"));
Assert.True(variables.Any(v => v.Value == "London"));

// Die Sammlung von Variablen sortiert Variablen automatisch alphabetisch nach Namen.
Assert.AreEqual(0, variables.IndexOfKey("Bedrooms"));
Assert.AreEqual(1, variables.IndexOfKey("City"));
Assert.AreEqual(2, variables.IndexOfKey("Home address"));

// Über die Sammlung von Variablen aufzählen.
using (IEnumerator<KeyValuePair<string, string>> enumerator = doc.Variables.GetEnumerator())
    while (enumerator.MoveNext())
        Console.WriteLine($"Name: {enumerator.Current.Key}, Value: {enumerator.Current.Value}");

// Im Folgenden finden Sie drei Möglichkeiten zum Entfernen von Dokumentvariablen aus einer Sammlung.
// 1 - Nach Namen:
variables.Remove("City");

Assert.False(variables.Contains("City"));

// 2 - Nach Index:
variables.RemoveAt(1);

Assert.False(variables.Contains("Home address"));

// 3 – Die gesamte Sammlung auf einmal löschen:
variables.Clear();

Assert.That(variables, Is.Empty);

Siehe auch