HtmlElement.ClientRectangle プロパティ


HTML ドキュメントにおける要素のクライアント領域の境界を取得します。Gets the bounds of the client area of the element in the HTML document.

 property System::Drawing::Rectangle ClientRectangle { System::Drawing::Rectangle get(); };
public System.Drawing.Rectangle ClientRectangle { get; }
member this.ClientRectangle : System.Drawing.Rectangle
Public ReadOnly Property ClientRectangle As Rectangle



要素が占有しているクライアント領域から、境界線とスクロール バーの領域を除いた領域。The client area occupied by the element, minus any area taken by borders and scroll bars. 要素の表示要素を含めた位置および寸法を取得するには、代わりに OffsetRectangle を使用します。To obtain the position and dimensions of the element inclusive of its adornments, use OffsetRectangle instead.

次の HTML ページを、コントロールのホストされたインスタンスに読み込んだとし WebBrowser ます。Assume you have loaded the following HTML page into a hosted instance of the WebBrowser control.



        <DIV id="div1" style="position:absolute;top:100px;left:100px;border-      style:solid;border-width:1px;">  
            Edit this text.  



次のコード例では、クライアント領域の幅が400ピクセル、高さが50ピクセル未満の場合にこの要素を取得し、その次元を展開する方法を示します。また、を状態に設定して、 DIV contentEditable ユーザーがテキストを入力できるようにします。The following code example demonstrates retrieving this element and expanding its dimensions if the client area is less than 400 pixels wide by 50 pixels high, and also sets the DIV to the contentEditable state so that the user can input text.

private void EnableEditing()
    if (webBrowser1.Document != null)
        HtmlElement elem = webBrowser1.Document.GetElementById("div1");
        if (elem != null)
            if (elem.ClientRectangle.Width < 200)
                elem.SetAttribute("width", "200px");

            if (elem.ClientRectangle.Height < 50)
                elem.SetAttribute("height", "50px");

            elem.SetAttribute("contentEditable", "true");
Private Sub EnableEditing()
    Dim Elem As HtmlElement = WebBrowser1.Document.GetElementById("div1")
    If (Not Elem Is Nothing) Then
        If (Elem.ClientRectangle.Width < 200) Then
            Elem.SetAttribute("width", "200px")
        End If

        If (Elem.ClientRectangle.Height < 50) Then
            Elem.SetAttribute("height", "50px")
        End If

        Elem.SetAttribute("contentEditable", "true")
    End If
End Sub


ClientRectangle は、明示的な高さと幅が割り当てられている要素、または絶対位置を使用する要素に対してのみ位置データを返します。ClientRectangle will return position data only for elements that have been assigned an explicit height and width, or elements that use absolute positioning. 位置スタイルがに設定されている場合、ドキュメントは絶対位置に配置され absolute ます。その後、HTML ページの任意の座標に配置できます。A document is absolutely positioned if its position style is set to absolute, after which it can be positioned at any coordinate on the HTML page.