Framesets
Framesets
Deze gids laat zien hoe je de verouderde frames-pagina-structuur in Aspose.Words FOSS voor .NET kunt lezen met behulp van de Frameset en FramesetCollection klassen, die respectievelijk een frames-pagina en de onderliggende frames vertegenwoordigen wanneer de structuur van een document een set frames modelleert.
De Frameset-klasse
Frameset vertegenwoordigt een frames-pagina of een enkel frame op een frames-pagina. Document.Frameset geeft de root Frameset terug voor een document dat is geladen vanuit een geframede HTML-structuur. FrameDefaultUrl (string) is de URL van de webpagina of bestandsnaam van het document dat in dat frame wordt weergegeven. IsFrameLinkToFile (bool) geeft aan of de FrameDefaultUrl-waarde een externe bron is waarnaar het frame linkt. ChildFramesets retourneert een FramesetCollection van de onderliggende frames en frames-pagina’s die onder deze zijn genest.
Itereren over onderliggende frames met FramesetCollection
FramesetCollection implementeert IEnumerable<Frameset>, dus GetEnumerator() ondersteunt foreach iteratie over de frames die het bevat. Count meldt het aantal frames of frames-pagina’s in de collectie. Combineer Count en iteratie met ChildFramesets om een geneste frames-pagina-structuur recursief te doorlopen — elk onderliggend Frameset kan zelf verdere ChildFramesets bevatten.
Tips en best practices
- Controleer
Document.Framesetopnullvoordat u de eigenschappen leest — de meeste documenten zijn geen frames-pagina’s, dus deze eigenschap wordt alleen gevuld wanneer de bron HTML een frames-indeling gebruikte. - Doorloop
ChildFramesetsrecursief (in plaats van uit te gaan van een platte, één-niveau structuur) omdat een framespagina verdere framespagina’s binnen zijn frames kan nesten. - Gebruik
IsFrameLinkToFileom een frame dat naar een externe bron linkt te onderscheiden van een frame dat een documentbestandsnaam direct inFrameDefaultUrlinsluit. FramesetCollection.Countis een eenvoudige manier om te controleren of eenFramesetkinderen heeft voordat er wordt geïtereerd.
Veelvoorkomende problemen
| Probleem | Oorzaak | Oplossing |
|---|---|---|
Document.Frameset is null | Het document is niet geladen vanuit een frames-gebaseerde HTML bron | Bevestig dat het brondocument daadwerkelijk HTML frames gebruikte voordat u op deze eigenschap vertrouwt |
Itereren over ChildFramesets mist geneste frames | Alleen het bovenste niveau werd geïtereerd | Ga recursief door elk kind Frameset.ChildFramesets in plaats van één niveau diep te itereren |
| Kan niet bepalen of een frame naar een bestand of een URL wijst | IsFrameLinkToFile was niet gecontroleerd | Lees IsFrameLinkToFile samen met FrameDefaultUrl om te weten hoe het doel moet worden opgelost |
FAQ
Wat is een Frameset in Aspose.Words FOSS voor .NET?
Het vertegenwoordigt een framespagina of een enkel frame op een framespagina, blootgesteld als Document.Frameset voor documenten die geladen worden vanuit een frames-gebaseerde HTML-bron.
Hoe kan ik alle frames in een frameset opsommen?
Itereer Frameset.ChildFramesets (een FramesetCollection) met GetEnumerator() / foreach, recursief in elk kind dat zelf nog verdere ChildFramesets heeft.
Hoe weet ik hoeveel kindframes een Frameset heeft?
Lees FramesetCollection.Count op de ChildFramesets-eigenschap.
Wat vertelt IsFrameLinkToFile je?
Of de webpagina- of documentbestandsnaam in FrameDefaultUrl een externe bron is waar het frame naar verwijst.
API Reference Samenvatting
| Klasse/Methode | Beschrijving |
|---|---|
Document.Frameset | Root Frameset voor een document geladen vanuit een op frames gebaseerde HTML bron |
Frameset | Stelt een framespagina of een enkel frame op een framespagina voor. |
Frameset.FrameDefaultUrl | Webpagina-URL of documentbestandsnaam die in het frame wordt weergegeven |
Frameset.IsFrameLinkToFile | Of FrameDefaultUrl een extern gekoppelde bron is |
Frameset.ChildFramesets | FramesetCollection van onderliggende frames en framepagina’s |
FramesetCollection | Collectie van Frameset-instanties; Count, GetEnumerator |