Feld Ergebnisformatierung
Feld-Ergebnisformatierung
Dieser Leitfaden zeigt, wie man die numerische, Datums-/Uhrzeit- und allgemeine Formatierung steuert, die auf das berechnete Ergebnis eines Feldes in Aspose.Words FOSS für .NET angewendet wird, unter Verwendung der Klasse FieldFormat, des Enums GeneralFormat und GeneralFormatCollection. Jede Field-Instanz stellt diese Formatierungs-Schalter über ihre Format-Eigenschaft bereit; diese Seite geht detailliert darauf ein, was diese Eigenschaft bietet.
Zugriff auf die Formatierung eines Feldes
Jedes Field — und seine typisierten Unterklassen wie FieldDate, FieldCreateDate und FieldSymbol — stellt eine Format-Eigenschaft vom Typ FieldFormat bereit, die für typisierten Zugriff auf die numerische, Datums- und Uhrzeit- sowie allgemeine Formatierung des Feldes verwendet wird. Lesen Sie Field.Format, um die an den Feldcode angehängten Schalter zu prüfen oder zu ändern, ohne den Rohfeldcode-Text manuell zu bearbeiten.
Numerische und Datums-/Uhrzeit-Formatdarstellungen
FieldFormat.NumericFormat ist eine schreibbare string-Eigenschaft, die die auf ein numerisches Feldresultat angewendete Formatierung enthält. FieldFormat.DateTimeFormat ist eine schreibbare string-Eigenschaft, die die auf ein Datums- und Uhrzeitfeldresultat angewendete Formatierung enthält. Setzen Sie eine der beiden Eigenschaften, um zu ändern, wie der entsprechende Feldtyp seinen berechneten Wert darstellt.
Allgemeine Formate
FieldFormat.GeneralFormats gibt ein GeneralFormatCollection zurück – allgemeine Formate, die auf ein numerisches, Text- oder beliebiges Feldresultat angewendet werden. Seine Mitglieder stammen aus der GeneralFormat-Aufzählung, die Fallumwandlungen (Upper, Lower, FirstCap, Caps), römische und ordinale Nummerierung (UppercaseRoman, LowercaseRoman, Ordinal, OrdText), Währungs- und Kardinaltext (DollarText, BahtText, CardText), länderspezifische Zahlensysteme (Aiueo, Arabic, ArabicAbjad, ArabicAlpha, ArabicDash, ChineseNum1–ChineseNum3, KanjiNum1–KanjiNum3, Hebrew1, Hebrew2, Ganada, Chosung, Zodiac1–Zodiac3, ThaiArabic, ThaiCardText, ThaiLetter, HindiArabic, HindiCardText, HindiLetter1, HindiLetter2, VietCardText, DBNum1–DBNum4, DBChar, SBChar, GB1–GB4, Hex, CircleNum, UppercaseAlphabetic, LowercaseAlphabetic), und die zusammenführungsfeld-spezifischen Werte CharFormat, MergeFormat und MergeFormatInet. None löscht allgemeine Formatierung.
Verwalten von GeneralFormatCollection
GeneralFormatCollection implementiert IEnumerable<GeneralFormat>, sodass Sie es mit GetEnumerator() in einer foreach-Schleife iterieren können. Rufen Sie Add(item) auf, um einen GeneralFormat-Wert anzuhängen, Remove(item), um jedes Vorkommen eines Wertes zu entfernen, oder RemoveAt(index), um den Wert an einer bestimmten Position zu entfernen. Count gibt an, wie viele allgemeine Formate derzeit angewendet werden.
Tipps und bewährte Verfahren
- Setzen Sie
Field.Format.NumericFormatoderField.Format.DateTimeFormatanstatt ein Formatierungsbild direkt in die Feldcode-Zeichenkette einzubetten – die typisierte Eigenschaft hält den Feldcode und seinen Formatierungs-Switch synchron. - Kombinieren Sie mehrere
GeneralFormat-Werte (zum BeispielUpperundMergeFormat), indem Sie jeden einzeln zuGeneralFormatshinzufügen; die Sammlung erlaubt mehr als einen Eintrag. - Nachdem Sie eine beliebige
FieldFormat-Eigenschaft geändert haben, rufen SieUpdate()im Besitzfeld auf, damit die neue Formatierung inResult/DisplayResultwidergespiegelt wird. - Verwenden Sie
GeneralFormat.None, um einen allgemeinen Format-Eintrag explizit zu löschen, anstatt veraltete Formatierungswerte in der Sammlung zu belassen. - Überprüfen Sie
GeneralFormatCollection.Count, bevor Sie annehmen, dass ein Feld keine allgemeine Formatierung hat — eine leere Sammlung und eine Sammlung, dieNoneenthält, sind unterschiedliche Zustände.
Häufige Probleme
| Problem | Ursache | Lösung |
|---|---|---|
Das Ändern von NumericFormat hat keine sichtbare Auswirkung | Das Feld wurde nach der Änderung nicht neu berechnet | Rufen Sie Update() für das Feld auf, nachdem Sie eine FieldFormat-Eigenschaft bearbeitet haben |
Doppelte allgemeine Formate erscheinen in GeneralFormats | Add(item) wurde mehrmals für denselben GeneralFormat-Wert aufgerufen | Überprüfen Sie GeneralFormatCollection.Count oder iterieren Sie, bevor Sie hinzufügen, oder rufen Sie zuerst Remove(item) auf |
Falscher Eintrag aus GeneralFormats entfernt | RemoveAt(index) wurde mit einem Index aufgerufen, der sich nach einer vorherigen Entfernung verschoben hat | Prüfen Sie Count und iterieren Sie die Sammlung erneut, bevor Sie nach Index entfernen |
FAQ
Wofür wird FieldFormat verwendet?
Es ist das typisierte Formatierungsobjekt, das von Field.Format bereitgestellt wird und Zugriff auf das numerische Format eines Feldes (NumericFormat), das Datums-/Uhrzeitformat (DateTimeFormat) und allgemeine Formate (GeneralFormats) ermöglicht.
Kann ein Feld mehr als ein allgemeines Format angewendet bekommen?
Ja — GeneralFormats ist ein GeneralFormatCollection, und Sie können Add mehr als einen GeneralFormat-Wert zuweisen.
Wie entferne ich alle allgemeinen Formatierungen von einem Feld?
Iteriere GeneralFormats und rufe Remove(item) für jeden Wert auf, oder RemoveAt(index) für einen konkreten Eintrag.
Führt das Setzen der FieldFormat-Eigenschaften dazu, dass der angezeigte Text des Feldes automatisch aktualisiert wird?
Nein — rufe Update() für das Feld auf, nachdem du seine Format-Eigenschaften geändert hast, damit Result und DisplayResult die neue Formatierung widerspiegeln.
API Reference Zusammenfassung
| Klasse/Methode | Beschreibung |
|---|---|
FieldFormat | Typisierter Zugriff auf die numerische, Datums-/Uhrzeit- und allgemeine Formatierung eines Feldes; bereitgestellt über Field.Format |
FieldFormat.NumericFormat | Formatvorlage, die auf das Ergebnis eines numerischen Feldes angewendet wird |
FieldFormat.DateTimeFormat | Formatvorlage, die auf das Ergebnis eines Datums-/Uhrzeitfeldes angewendet wird |
FieldFormat.GeneralFormats | GeneralFormatCollection der allgemeinen Formate, die auf das Ergebnis des Feldes angewendet werden |
GeneralFormat | Enum der allgemeinen Formatierungsschalter (Groß-/Kleinschreibung, Zahlensysteme, Merge-Feld-Formate) |
GeneralFormatCollection | Typisierte Sammlung von GeneralFormat-Werten; Add, Remove, RemoveAt, Count, GetEnumerator |