Các trường ngày và thời gian

Các trường ngày và thời gian

Trường Ngày và Giờ

Hướng dẫn này chỉ cách làm việc với các lớp trường ngày và giờ nhận thức lịch trong Aspose.Words FOSS cho .NET — FieldDate, FieldCreateDate, FieldPrintDate, và FieldSaveDate — mà triển khai các trường của Word DATE, CREATEDATE, PRINTDATE, và SAVEDATE trường tương ứng. Mỗi lớp kế thừa từ Field và triển khai IFieldWithCalendar; đối với mô hình cơ bản Field mô hình đối tượng tự nó (cập nhật, hủy liên kết, xóa và định dạng bất kỳ trường nào), xem the Làm việc với các Trường hướng dẫn.


Bốn Lớp Trường Ngày và Giờ

FieldDate triển khai trường DATE. FieldCreateDate triển khai CREATEDATE, ngày tài liệu được tạo. FieldPrintDate triển khai PRINTDATE, ngày tài liệu được in lần cuối. FieldSaveDate triển khai SAVEDATE, ngày tài liệu được lưu lần cuối. Bốn lớp đều là lớp con của Field và triển khai IFieldCodeTokenInfoProvider và IFieldWithCalendar, do đó chúng chia sẻ Field’s GetFieldCode(), Update(), Unlink(), Remove(), và các thành viên định dạng (Format) cùng với các công tắc lịch riêng của chúng được mô tả bên dưới.


Chọn Lịch Không Dùng Dương Lịch

Mỗi một trong bốn lớp đều cung cấp UseLunarCalendar (bool) để hiển thị kết quả bằng lịch Hijri Lunar hoặc Hebrew Lunar, UseSakaEraCalendar (bool) cho lịch Saka Era, và UseUmAlQuraCalendar (bool) cho lịch Um-al-Qura. Đặt thuộc tính tương ứng thành true trước khi gọi Update() để trường tính lại kết quả của nó bằng hệ thống lịch đó thay vì dương lịch mặc định.


Công tắc Định dạng Ứng dụng của FieldDate

FieldDate còn cung cấp UseLastFormat (bool), cho phép kiểm soát việc trường có sử dụng định dạng cuối cùng được ứng dụng chủ quản sử dụng khi một trường DATE mới được chèn. FieldCreateDate, FieldPrintDate và FieldSaveDate không cung cấp thuộc tính này.


Mẹo và Thực hành Tốt nhất

  • Đặt công tắc lịch (UseLunarCalendar, UseSakaEraCalendar hoặc UseUmAlQuraCalendar) và sau đó gọi Update() trên trường — chỉ thay đổi thuộc tính không tự động tính lại Result.
  • Chỉ đặt một công tắc lịch thành true cho một thể hiện trường nhất định; kết hợp nhiều hơn một sẽ tạo ra kết quả mơ hồ.
  • Sử dụng Field.Format (a FieldFormat, được đề cập trong Định dạng Kết quả Trường hướng dẫn) cùng với các công tắc lịch này để cũng kiểm soát định dạng số hoặc ngày/giờ được áp dụng cho kết quả.
  • Chọn lớp phù hợp với ngữ nghĩa bạn cần — FieldSaveDate và FieldPrintDate đọc dấu thời gian được ghi trong tài liệu, trong khi FieldDate phản ánh bất kỳ ngày nào mà trường được cập nhật.

Các vấn đề thường gặp

Vấn đềNguyên nhânSửa
Công tắc lịch không ảnh hưởng đến kết quả hiển thịTrường không được tính lại sau khi thuộc tính được đặtGọi Update() trên thể hiện trường sau khi đặt UseLunarCalendar, UseSakaEraCalendar hoặc UseUmAlQuraCalendar
UseLastFormat không biên dịch được trên FieldPrintDate hoặc FieldSaveDateThuộc tính đó chỉ tồn tại trên FieldDateSử dụng FieldDate cho hành vi application-format-follows, hoặc đặt Format một cách rõ ràng trên các lớp khác
Kết quả hiển thị hệ thống lịch saiNhiều hơn một công tắc lịch đã được đặt thành true trên cùng một trườngChỉ đặt một trong số UseLunarCalendar, UseSakaEraCalendar, UseUmAlQuraCalendar cho mỗi thể hiện trường

FAQ

Sự khác biệt giữa FieldDate và FieldCreateDate là gì?

FieldDate triển khai trường DATE (tính lại ngày hiện tại mỗi khi nó cập nhật); FieldCreateDate triển khai CREATEDATE (ngày tài liệu được tạo).

Làm thế nào để tôi làm cho trường ngày sử dụng lịch Hijri Lunar?

Đặt UseLunarCalendar = true trên thể hiện FieldDate, FieldCreateDate, FieldPrintDate hoặc FieldSaveDate, sau đó gọi Update().

Lớp nào trong bốn lớp theo dõi thời điểm tài liệu được lưu lần cuối?

FieldSaveDate, triển khai trường SAVEDATE.

Các lớp này có hỗ trợ hình ảnh định dạng tùy chỉnh, chứ không chỉ các công tắc lịch?

Có — mỗi cái đều cung cấp một Format thuộc tính (FieldFormat) được kế thừa từ hạ tầng trường cơ bản; xem Định dạng Kết quả Trường hướng dẫn cho NumericFormat and DateTimeFormat.


API Reference Tóm tắt

Lớp/Phương thứcMô tả
FieldDateTriển khai trường DATE
FieldCreateDateTriển khai trường CREATEDATE
FieldPrintDateTriển khai trường PRINTDATE
FieldSaveDateThực hiện trường SAVEDATE
UseLunarCalendarHiển thị kết quả bằng lịch Hijri Lunar hoặc Hebrew Lunar
UseSakaEraCalendarHiển thị kết quả bằng lịch Saka Era
UseUmAlQuraCalendarHiển thị kết quả bằng lịch Um-al-Qura
FieldDate.UseLastFormatSử dụng định dạng lần cuối được ứng dụng lưu trữ sử dụng cho trường DATE mới
IFieldWithCalendarGiao diện được thực hiện bởi cả bốn lớp cho các kết quả trường nhận thức lịch

Xem thêm

 Tiếng Việt