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 HtmlWindow 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, die Frames enthält, und eine Tabelle mit allen ausgehenden Links von jeder Seite für die zukünftige Überprüfung erstellt.
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
bestehen, das mehrere feste FRAME
Objekte definiert, von denen jedes eine eigene HTML-Seite enthält. Alternativ kann ein Dokument eine Reihe von IFRAME
Objekten enthalten, die Dokumente beliebig in anderen Dokumenten positionieren können.
FRAME
-Objekte und IFRAME
-Objekte werden auf ihrer obersten Ebene durch ein HtmlWindowCollectiondargestellt, das Elemente vom Typ HtmlWindowenthält.
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 der Standardarraysyntax ermöglicht.
Wenn Sie neue Fenster mit den Open Methoden oder OpenNew erstellen und die von diesen Fenstern gehosteten Dokumente Elemente enthalten FRAME
IFRAME
, werden diese Elemente auf der HtmlWindowCollection übergeordneten Seite angezeigt.
Weitere Informationen zu Frames finden Sie in der Dokumentation für die Frames -Eigenschaft.
Eigenschaften
Count |
Ruft die Anzahl der Elemente in der Auflistung ab. |
Item[Int32] |
Ruft ein Rahmenfenster durch Bereitstellen der Position des Rahmens in der Auflistung ab. |
Item[String] |
Ruft ein Rahmenfenster ab, indem der Name des Rahmens bereitgestellt wird. |
Methoden
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetEnumerator() |
Gibt einen Enumerator zurück, der alle Elemente in der HtmlWindowCollection durchlaufen kann. |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
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 ist (threadsicher). |
ICollection.SyncRoot |
Ruft ein Objekt ab, mit dem der Zugriff auf die Auflistung synchronisiert werden kann. |
Erweiterungsmethoden
Cast<TResult>(IEnumerable) |
Wandelt die Elemente eines IEnumerable in den angegebenen Typ um |
OfType<TResult>(IEnumerable) |
Filtert die Elemente eines IEnumerable anhand eines angegebenen Typs |
AsParallel(IEnumerable) |
Ermöglicht die Parallelisierung einer Abfrage. |
AsQueryable(IEnumerable) |
Konvertiert einen IEnumerable in einen IQueryable. |