Aracılığıyla paylaş


HtmlWindowCollection Sınıf

Tanım

Başka bir HtmlWindowiçinde bulunan pencereleri temsil eder.

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
Devralma
HtmlWindowCollection
Uygulamalar

Örnekler

Aşağıdaki kod örneği, çerçeveler içeren bir sayfadaki her belgeyi inceler ve gelecekte incelemek üzere her sayfadan giden köprülerin tümünü içeren bir tablo oluşturur.

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

Açıklamalar

HTML belgesi, her biri kendi HTML sayfasını içeren birden çok sabit FRAME nesneyi tanımlayan bir FRAMESET öğesinden oluşabilir. Alternatif olarak, belge bir dizi IFRAME nesne içerebilir ve bu nesneler belgeleri rastgele olarak diğer belgelerin içine konumlandırabilir. FRAMEnesneleri ve IFRAME nesneleri, türündeki HtmlWindowöğeleri içeren bir HtmlWindowCollectionile en üst düzeylerinde temsil edilir.

HtmlWindowCollection IEnumerator, döngü yapılarında kullanılabilmesi için arabirimini destekler. Ayrıca, bir yöntem çağrısı aracılığıyla veya standart dizi söz dizimi kullanarak koleksiyonun öğelerine erişim sağlayan bir Item yöntemi tanımlar.

veya yöntemleriyle Open yeni pencereler oluşturursanız ve bu pencereler tarafından barındırılan belgeler veya IFRAME öğeleri içeriyorsaFRAME, bu öğeler üst sayfanın içinde HtmlWindowCollectionOpenNew görünür.

Çerçeveler hakkında daha fazla bilgi için özelliğin belgelerine Frames bakın.

Özellikler

Count

Koleksiyondaki öğe sayısını alır.

Item[Int32]

Çerçevenin koleksiyondaki konumunu sağlayarak bir çerçeve penceresi alır.

Item[String]

Çerçevenin adını sağlayarak bir çerçeve penceresi alır.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetEnumerator()

içindeki tüm öğelerde HtmlWindowCollectionyineleyebilecek bir numaralandırıcı döndürür.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

ICollection.CopyTo(Array, Int32)

Koleksiyonun öğelerini belirli Array bir dizinden başlayarak öğesine Arraykopyalar.

ICollection.IsSynchronized

Koleksiyona erişimin eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli).

ICollection.SyncRoot

Koleksiyona erişimi eşitlemek için kullanılabilecek bir nesne alır.

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini etkinleştirir.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır

Ayrıca bkz.