Pemformatan Hasil Bidang
Pemformatan Hasil Field
Panduan ini menunjukkan cara mengendalikan pemformatan numerik, tanggal/waktu, dan umum yang diterapkan pada hasil perhitungan sebuah field di Aspose.Words FOSS untuk .NET, menggunakan kelas FieldFormat, enum GeneralFormat, dan GeneralFormatCollection. Setiap instance Field menampilkan saklar pemformatan ini melalui properti Format-nya; halaman ini merupakan penjelasan mendalam tentang apa yang ditawarkan properti tersebut.
Mengakses Pemformatan Field
Setiap Field — dan subclass yang bertipe seperti FieldDate, FieldCreateDate, dan FieldSymbol — menampilkan properti Format berjenis FieldFormat, yang digunakan untuk mengakses secara bertipe pemformatan numerik, tanggal dan waktu, serta umum pada field. Baca Field.Format untuk memeriksa atau mengubah saklar yang terlampir pada kode field tanpa mengedit secara manual teks kode field mentah.
Gambar Format Numerik dan Tanggal/Waktu
FieldFormat.NumericFormat adalah properti string yang dapat ditulis yang menyimpan pemformatan yang diterapkan pada hasil field numerik. FieldFormat.DateTimeFormat adalah properti string yang dapat ditulis yang menyimpan pemformatan yang diterapkan pada hasil field tanggal dan waktu. Atur salah satu properti tersebut untuk mengubah cara tipe field yang bersangkutan menampilkan nilai yang dihitung.
Format Umum
FieldFormat.GeneralFormats mengembalikan sebuah GeneralFormatCollection — format serbaguna yang diterapkan pada hasil numerik, teks, atau bidang apa pun. Anggotanya diambil dari enum GeneralFormat, yang mencakup transformasi huruf (Upper, Lower, FirstCap, Caps), penomoran Romawi dan ordinal (UppercaseRoman, LowercaseRoman, Ordinal, OrdText), mata uang dan teks kardinal (DollarText, BahtText, CardText), sistem penomoran spesifik lokal (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), serta nilai spesifik merge-field CharFormat, MergeFormat, dan MergeFormatInet. None menghapus format umum.
Mengelola GeneralFormatCollection
GeneralFormatCollection mengimplementasikan IEnumerable<GeneralFormat>, sehingga Anda dapat mengiterasinya dengan GetEnumerator() dalam loop foreach. Panggil Add(item) untuk menambahkan nilai GeneralFormat, Remove(item) untuk menghapus setiap kemunculan nilai, atau RemoveAt(index) untuk menghapus nilai pada posisi tertentu. Count melaporkan berapa banyak format umum yang saat ini diterapkan.
Tips dan Praktik Terbaik
- Tetapkan
Field.Format.NumericFormatatauField.Format.DateTimeFormatalih-alih menyematkan gambar pemformatan secara langsung dalam string kode bidang — properti yang diketik menjaga kode bidang dan saklar pemformatannya tetap sinkron. - Gabungkan beberapa nilai
GeneralFormat(misalnyaUpperdanMergeFormat) dengan menambahkan masing-masing keGeneralFormatssecara terpisah; koleksi ini memperbolehkan lebih dari satu entri. - Setelah mengubah properti
FieldFormatapa pun, panggilUpdate()pada bidang yang memilikinya sehingga pemformatan baru tercermin diResult/DisplayResult. - Gunakan
GeneralFormat.Noneuntuk secara eksplisit menghapus entri format umum alih-alih membiarkan nilai pemformatan usang tetap ada dalam koleksi. - Periksa
GeneralFormatCollection.Countsebelum mengasumsikan sebuah field tidak memiliki format umum yang diterapkan — sebuah koleksi kosong dan koleksi yang berisiNoneadalah keadaan yang berbeda.
Masalah Umum
| Masalah | Penyebab | Perbaikan |
|---|---|---|
Mengubah NumericFormat tidak memberikan efek yang terlihat | Bidang tidak dihitung ulang setelah perubahan | Panggil Update() pada bidang setelah mengedit properti FieldFormat apa pun |
Format umum duplikat muncul di GeneralFormats | Add(item) dipanggil lebih dari satu kali untuk nilai GeneralFormat yang sama | Periksa GeneralFormatCollection.Count atau iterasi sebelum menambahkan, atau panggil Remove(item) terlebih dahulu |
Entri yang salah dihapus dari GeneralFormats | RemoveAt(index) dipanggil dengan indeks yang bergeser setelah penghapusan sebelumnya | Periksa Count dan iterasi koleksi lagi sebelum menghapus berdasarkan indeks |
FAQ
Untuk apa FieldFormat digunakan?
Itu adalah objek format yang bertipe yang diekspos oleh Field.Format, memberikan akses ke format numerik field (NumericFormat), format tanggal/waktu (DateTimeFormat), dan format umum (GeneralFormats).
Apakah sebuah field dapat memiliki lebih dari satu format umum yang diterapkan?
Ya — GeneralFormats adalah GeneralFormatCollection, dan Anda dapat Add lebih dari satu nilai GeneralFormat padanya.
Bagaimana cara menghapus semua format umum dari sebuah field?
Iterasi GeneralFormats dan panggil Remove(item) untuk setiap nilai, atau RemoveAt(index) untuk entri tertentu.
Apakah mengatur properti FieldFormat secara otomatis menyegarkan teks yang ditampilkan pada bidang?
Tidak — panggil Update() pada bidang setelah mengubah properti Format sehingga Result dan DisplayResult mencerminkan pemformatan baru.
API Reference Ringkasan
| Kelas/Metode | Deskripsi |
|---|---|
FieldFormat | Akses tipe ke format numerik, tanggal/waktu, dan umum sebuah bidang; disajikan melalui Field.Format |
FieldFormat.NumericFormat | Gambar pemformatan yang diterapkan pada hasil bidang numerik |
FieldFormat.DateTimeFormat | Gambar pemformatan yang diterapkan pada hasil bidang tanggal/waktu |
FieldFormat.GeneralFormats | GeneralFormatCollection dari format umum yang diterapkan pada hasil bidang |
GeneralFormat | Enum dari saklar pemformatan umum (transformasi huruf, sistem penomoran, format bidang gabungan) |
GeneralFormatCollection | Koleksi bertipe dari nilai GeneralFormat; Add, Remove, RemoveAt, Count, GetEnumerator |