Graphics.IsVisible Method (Rectangle)


Indicates whether the rectangle specified by a Rectangle structure is contained within the visible clip region of this Graphics.

Namespace:   System.Drawing
Assembly:  System.Drawing (in System.Drawing.dll)

Public Function IsVisible (
	rect As Rectangle
) As Boolean


Type: System.Drawing.Rectangle

Rectangle structure to test for visibility.

Return Value

Type: System.Boolean

true if the rectangle specified by the rect parameter is contained within the visible clip region of this Graphics; otherwise, false.

The following code example is designed for use with Windows Forms, and it requires PaintEventArgse, which is a parameter of the Paint event handler. The code performs the following actions:

  • Creates a rectangular clipping region and sets it as the clipping region for the graphics object of the form usingReplace.

  • Creates the location and size of two rectangles, one inside the clipping region and one outside.

  • Tests each of the rectangles for visibility and draws only the visible one.

The result is one small red rectangle, which is within the clip region.

Private Sub IsVisibleRectangle(ByVal e As PaintEventArgs)

    ' Set clip region.
    Dim clipRegion As New [Region](New Rectangle(50, 50, 100, 100))
    e.Graphics.SetClip(clipRegion, CombineMode.Replace)

    ' Set up coordinates of rectangles.
    Dim rect1 As New Rectangle(100, 100, 20, 20)
    Dim rect2 As New Rectangle(200, 200, 20, 20)

    ' If rectangle is visible, fill it.
    If e.Graphics.IsVisible(rect1) Then
        e.Graphics.FillRectangle(New SolidBrush(Color.Red), rect1)
    End If
    If e.Graphics.IsVisible(rect2) Then
        e.Graphics.FillRectangle(New SolidBrush(Color.Blue), rect2)
    End If
End Sub

.NET Framework
Available since 1.1
Return to top