HtmlWindowCollection HtmlWindowCollection HtmlWindowCollection HtmlWindowCollection Class

定義

別の HtmlWindow 内に含まれているウィンドウを表します。Represents the windows contained within another 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
継承
HtmlWindowCollectionHtmlWindowCollectionHtmlWindowCollectionHtmlWindowCollection
実装

次のコード例では、フレームを含むページ内の各ドキュメントを検査し、今後の検査のために各ページから送信されるすべてのハイパーリンクのテーブルを作成します。The following code example inspects each document within a page containing frames and creates a table of all of the outgoing hyperlinks from each page for future inspection.

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

注釈

Html ドキュメントは、それぞれが独自FRAMESETの html ページをFRAME含む複数の固定オブジェクトを定義するで構成されている場合があります。An HTML document may consist of a FRAMESET that defines multiple fixed FRAME objects, each of which contains its own HTML page. または、ドキュメントに複数IFRAMEのオブジェクトを含めることもできます。これにより、ドキュメントを他のドキュメント内に自由に配置できます。Alternatively, a document may contain a number of IFRAME objects, which can position documents arbitrarily inside of other documents. FRAMEオブジェクトとIFRAMEオブジェクトはHtmlWindowCollection、型HtmlWindowの要素を格納するによって最上位レベルで表されます。FRAME objects and IFRAME objects are represented at their top-most level by an HtmlWindowCollection, which contains elements of type HtmlWindow.

HtmlWindowCollectionは、 IEnumeratorループ構造で使用できるように、インターフェイスをサポートしています。HtmlWindowCollection supports the IEnumerator interface so that it can be used in loop constructs. また、メソッド呼び出しを使用するか、標準の配列構文を使用して、コレクションの要素にアクセスできるようにする Item メソッドも定義します。It also defines an Item method, which allows access to the elements of the collection either via a method call or using standard array syntax.

メソッドOpenまたはOpenNewメソッドを使用して新しいウィンドウを作成し、これらのウィンドウでホストIFRAMEされているドキュメントにまたは要素HtmlWindowCollectionが含まFRAMEれている場合、これらの要素は親ページのに表示されます。If you create new windows with the Open or OpenNew methods, and the documents hosted by these windows contain FRAME or IFRAME elements, that these elements will appear in the HtmlWindowCollection of the parent page.

フレームの詳細については、 Framesプロパティのドキュメントを参照してください。For more information on frames, see the documentation for the Frames property.

プロパティ

Count Count Count Count

コレクション内の要素の数を取得します。Gets the number of elements in the collection.

Item[Int32] Item[Int32] Item[Int32] Item[Int32]

フレームのコレクションにおける位置を指定して、フレーム ウィンドウを取得します。Retrieves a frame window by supplying the frame's position in the collection.

Item[String] Item[String] Item[String] Item[String]

フレームの名前を指定して、フレーム ウィンドウを取得します。Retrieves a frame window by supplying the frame's name.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetEnumerator() GetEnumerator() GetEnumerator() GetEnumerator()

HtmlWindowCollection 内のすべての要素を反復処理できる列挙子を返します。Returns an enumerator that can iterate through all elements in the HtmlWindowCollection.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

明示的なインターフェイスの実装

ICollection.CopyTo(Array, Int32) ICollection.CopyTo(Array, Int32) ICollection.CopyTo(Array, Int32) ICollection.CopyTo(Array, Int32)

コレクションの要素を Array にコピーします。Array の特定のインデックスからコピーが開始されます。Copies the elements of the collection to an Array, starting at a particular Array index.

ICollection.IsSynchronized ICollection.IsSynchronized ICollection.IsSynchronized ICollection.IsSynchronized

コレクションへのアクセスが同期されている (スレッド セーフである) かどうかを示す値を取得します。Gets a value indicating whether access to the collection is synchronized (thread safe).

ICollection.SyncRoot ICollection.SyncRoot ICollection.SyncRoot ICollection.SyncRoot

コレクションへのアクセスを同期するために使用できるオブジェクトを取得します。Gets an object that can be used to synchronize access to the collection.

拡張メソッド

Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable)

IEnumerable の要素を、指定した型にキャストします。Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable)

指定された型に基づいて IEnumerable の要素をフィルター処理します。Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable)

クエリの並列化を有効にします。Enables parallelization of a query.

AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable)

IEnumerableIQueryable に変換します。Converts an IEnumerable to an IQueryable.

適用対象

こちらもご覧ください