HtmlWindowCollection Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt die Fenster dar, die in einem anderen HtmlWindowfenster enthalten sind.
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
- Vererbung
-
HtmlWindowCollection
- Implementiert
Beispiele
Im folgenden Codebeispiel wird jedes Dokument innerhalb einer Seite überprüft, das Frames enthält, und erstellt eine Tabelle aller ausgehenden Hyperlinks von jeder Seite zur zukünftigen Überprüfung.
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
Hinweise
Ein HTML-Dokument kann aus einem FRAMESET Dokument bestehen, das mehrere feste FRAME Objekte definiert, die jeweils eine eigene HTML-Seite enthalten. Alternativ kann ein Dokument eine Reihe von IFRAME Objekten enthalten, die Dokumente beliebig innerhalb anderer Dokumente positionieren können.
FRAME Objekte und IFRAME Objekte werden auf ihrer obersten Ebene durch ein HtmlWindowCollection, das Elemente vom Typ HtmlWindowenthält dargestellt.
HtmlWindowCollection unterstützt die IEnumerator Schnittstelle, sodass sie in Schleifenkonstrukten verwendet werden kann. Außerdem wird eine Item-Methode definiert, die den Zugriff auf die Elemente der Auflistung entweder über einen Methodenaufruf oder mithilfe einer Standardarraysyntax ermöglicht.
Wenn Sie neue Fenster mit den Methoden oder OpenNew Den Open Dokumenten erstellen, die von diesen Fenstern gehostet werden, enthalten FRAME oder IFRAME Elemente, werden diese Elemente auf der HtmlWindowCollection übergeordneten Seite angezeigt.
Weitere Informationen zu Frames finden Sie in der Dokumentation für die Frames Eigenschaft.
Eigenschaften
| Name | Beschreibung |
|---|---|
| Count |
Ruft die Anzahl der Elemente in der Auflistung ab. |
| Item[Int32] |
Ruft ein Framefenster ab, indem die Position des Frames in der Auflistung bereitgestellt wird. |
| Item[String] |
Ruft ein Framefenster ab, indem der Name des Frames angegeben wird. |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetEnumerator() |
Gibt einen Enumerator zurück, der alle Elemente in der HtmlWindowCollectionEnumerator durchlaufen kann. |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| ICollection.CopyTo(Array, Int32) |
Kopiert die Elemente der Auflistung in ein Array, beginnend bei einem bestimmten Array Index. |
| ICollection.IsSynchronized |
Ruft einen Wert ab, der angibt, ob der Zugriff auf die Auflistung synchronisiert wird (Threadsicher). |
| ICollection.SyncRoot |
Ruft ein Objekt ab, das zum Synchronisieren des Zugriffs auf die Auflistung verwendet werden kann. |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| AsParallel(IEnumerable) |
Aktiviert die Parallelisierung einer Abfrage. |
| AsQueryable(IEnumerable) |
Wandelt eine IEnumerable in eine IQueryableum. |
| Cast<TResult>(IEnumerable) |
Wandelt die Elemente eines IEnumerable in den angegebenen Typ um. |
| OfType<TResult>(IEnumerable) |
Filtert die Elemente einer IEnumerable basierend auf einem angegebenen Typ. |