Framesets

Framesets

Hướng dẫn này cho thấy cách đọc cấu trúc trang khung kế thừa trong Aspose.Words FOSS cho .NET bằng cách sử dụng các lớp Frameset và FramesetCollection, chúng đại diện cho một trang khung và các khung con khi cấu trúc tài liệu mô hình hoá một tập hợp các khung.


Lớp Frameset

Frameset đại diện cho một trang khung hoặc một khung duy nhất trên một trang khung. Document.Frameset trả về Frameset gốc cho một tài liệu đã được tải từ cấu trúc HTML có khung. FrameDefaultUrl (string) là URL của trang web hoặc tên tệp tài liệu được hiển thị trong khung đó. IsFrameLinkToFile (bool) cho biết liệu giá trị FrameDefaultUrl có phải là tài nguyên bên ngoài mà khung liên kết tới hay không. ChildFramesets trả về một FramesetCollection của các khung con và các trang khung được lồng bên trong.


Duyệt các khung con với FramesetCollection

FramesetCollection thực thi IEnumerable<Frameset>, vì vậy GetEnumerator() hỗ trợ việc lặp lại foreach trên các khung mà nó chứa. Count báo cáo số lượng khung hoặc trang khung trong bộ sưu tập. Kết hợp Count và việc lặp lại với ChildFramesets để duyệt cấu trúc trang khung lồng nhau một cách đệ quy — mỗi Frameset con có thể tự chứa thêm ChildFramesets.


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

  • Kiểm tra Document.Frameset để tìm null trước khi đọc các thuộc tính của nó — hầu hết tài liệu không phải là trang khung, vì vậy thuộc tính này chỉ được điền khi HTML nguồn đã sử dụng bố cục khung.
  • Duyệt ChildFramesets một cách đệ quy (thay vì giả định cấu trúc phẳng, một cấp) vì một trang khung có thể lồng thêm các trang khung khác bên trong các khung của nó.
  • Sử dụng IsFrameLinkToFile để phân biệt một khung liên kết tới tài nguyên bên ngoài với một khung nhúng tên tệp tài liệu trực tiếp trong FrameDefaultUrl.
  • FramesetCollection.Count là cách đơn giản để kiểm tra xem một Frameset có bất kỳ phần tử con nào không trước khi lặp.

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

Vấn đềNguyên nhânKhắc phục
Document.Frameset là nullTài liệu không được tải từ nguồn HTML dựa trên khungXác nhận tài liệu nguồn thực sự đã sử dụng khung HTML trước khi dựa vào thuộc tính này
Việc lặp lại ChildFramesets bỏ qua các khung lồng nhauChỉ cấp độ trên cùng đã được lặp lạiĐệ quy vào từng Frameset.ChildFramesets con thay vì duyệt một cấp sâu
Không thể xác định khung trỏ tới tệp hay URLIsFrameLinkToFile chưa được kiểm traĐọc IsFrameLinkToFile cùng với FrameDefaultUrl để biết cách giải quyết mục tiêu

FAQ

Frameset là gì trong Aspose.Words FOSS cho .NET?

Nó đại diện cho một trang khung hoặc một khung duy nhất trên một trang khung, được hiển thị dưới dạng Document.Frameset cho các tài liệu được tải từ nguồn HTML dựa trên khung.

Làm thế nào để liệt kê tất cả các khung trong một frameset?

Lặp lại Frameset.ChildFramesets (một FramesetCollection) với GetEnumerator() / foreach, đệ quy vào bất kỳ phần tử con nào mà bản thân nó có thêm ChildFramesets.

Làm sao tôi biết một Frameset có bao nhiêu khung con?

Đọc FramesetCollection.Count trên thuộc tính ChildFramesets của nó.

IsFrameLinkToFile cho bạn biết gì?

Liệu trang web hoặc tên tệp tài liệu trong FrameDefaultUrl có phải là tài nguyên bên ngoài mà khung được liên kết tới hay không.


API Reference Tóm tắt

Lớp/Phương thứcMô tả
Document.FramesetGốc Frameset cho tài liệu được tải từ nguồn HTML dựa trên khung
FramesetBiểu diễn một trang khung hoặc một khung đơn trên một trang khung
Frameset.FrameDefaultUrlURL của trang web hoặc tên tệp tài liệu được hiển thị trong khung
Frameset.IsFrameLinkToFileLiệu FrameDefaultUrl có phải là tài nguyên liên kết bên ngoài hay không
Frameset.ChildFramesetsFramesetCollection của các khung con và các trang khung
FramesetCollectionTập hợp các thể hiện Frameset; Count, GetEnumerator

Xem thêm

 Tiếng Việt