HtmlWindowCollection Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta le finestre contenute all'interno di un altro oggetto HtmlWindow.
public ref class HtmlWindowCollection : System::Collections::ICollection
public class HtmlWindowCollection : System.Collections.ICollection
type HtmlWindowCollection = class
interface ICollection
interface IEnumerable
Public Class HtmlWindowCollection
Implements ICollection
- Ereditarietà
-
HtmlWindowCollection
- Implementazioni
Esempio
L'esempio di codice seguente controlla ogni documento all'interno di una pagina contenente frame e crea una tabella di tutti i collegamenti ipertestuali in uscita da ogni pagina per un'ispezione futura.
private void GetLinksFromFrames()
{
Hashtable linksTable = new Hashtable();
string frameUrl;
if (!(webBrowser1.Document == null))
{
HtmlWindow currentWindow = webBrowser1.Document.Window;
if (currentWindow.Frames.Count > 0)
{
foreach (HtmlWindow frame in currentWindow.Frames)
{
frameUrl = frame.Url.ToString();
Hashtable frameLinksHash = new Hashtable();
linksTable.Add(frameUrl, frameLinksHash);
foreach (HtmlElement hrefElement in frame.Document.Links)
{
frameLinksHash.Add(hrefElement.GetAttribute("HREF"), "Url");
}
}
}
else
{
Hashtable docLinksHash = new Hashtable();
linksTable.Add(webBrowser1.Document.Url.ToString(), docLinksHash);
foreach (HtmlElement hrefElement in webBrowser1.Document.Links)
{
docLinksHash.Add(hrefElement.GetAttribute("HREF"), "Url");
}
}
}
}
Dim LinksTable As Hashtable
Private Sub GetLinksFromFrames()
LinksTable = New Hashtable()
Dim FrameUrl As String
If (WebBrowser1.Document IsNot Nothing) Then
With WebBrowser1.Document
Dim CurrentWindow As HtmlWindow = .Window
If (CurrentWindow.Frames.Count > 0) Then
For Each Frame As HtmlWindow In CurrentWindow.Frames
FrameUrl = Frame.Url.ToString()
Dim FrameLinksHash As New Hashtable()
LinksTable.Add(FrameUrl, FrameLinksHash)
For Each HrefElement As HtmlElement In Frame.Document.Links
FrameLinksHash.Add(HrefElement.GetAttribute("HREF"), "Url")
Next
Next
Else
Dim DocLinksHash As New Hashtable()
LinksTable.Add(.Url.ToString(), DocLinksHash)
For Each HrefElement As HtmlElement In .Links
DocLinksHash.Add(HrefElement.GetAttribute("HREF"), "Url")
Next
End If
End With
End If
End Sub
Commenti
Un documento HTML può essere costituito da un FRAMESET
oggetto che definisce più oggetti fissi FRAME
, ognuno dei quali contiene la propria pagina HTML. In alternativa, un documento può contenere diversi IFRAME
oggetti, che possono posizionare i documenti in modo arbitrario all'interno di altri documenti.
FRAME
gli oggetti e IFRAME
gli oggetti sono rappresentati al livello superiore da un HtmlWindowCollectionoggetto , che contiene elementi di tipo HtmlWindow.
HtmlWindowCollection supporta l'interfaccia IEnumerator in modo che possa essere usata nei costrutti di ciclo. Definisce anche un metodo Item, che consente l'accesso agli elementi della raccolta tramite una chiamata al metodo o usando la sintassi della matrice standard.
Se si creano nuove finestre con i Open metodi o OpenNew e i documenti ospitati da queste finestre contengono FRAME
elementi o IFRAME
, questi elementi verranno visualizzati nella HtmlWindowCollection pagina padre.
Per altre informazioni sui frame, vedere la documentazione per la Frames proprietà .
Proprietà
Count |
Ottiene il numero di elementi nella raccolta. |
Item[Int32] |
Recupera una finestra con frame fornendo la posizione del frame nell'insieme. |
Item[String] |
Recupera una finestra con frame fornendo il nome del frame. |
Metodi
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetEnumerator() |
Restituisce un enumeratore che può scorrere tutti gli elementi in HtmlWindowCollection. |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
ICollection.CopyTo(Array, Int32) |
Copia gli elementi della raccolta in un oggetto Array, a partire da uno specifico indice di Array. |
ICollection.IsSynchronized |
Ottiene un valore che indica se l'accesso alla raccolta è sincronizzato (thread-safe). |
ICollection.SyncRoot |
Ottiene un oggetto che può essere usato per sincronizzare l'accesso alla raccolta. |
Metodi di estensione
Cast<TResult>(IEnumerable) |
Esegue il cast degli elementi di un oggetto IEnumerable nel tipo specificato. |
OfType<TResult>(IEnumerable) |
Filtra gli elementi di un oggetto IEnumerable in base a un tipo specificato. |
AsParallel(IEnumerable) |
Consente la parallelizzazione di una query. |
AsQueryable(IEnumerable) |
Converte un oggetto IEnumerable in un oggetto IQueryable. |