Graphics.IsVisible Method (RectangleF)

 

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

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

public bool IsVisible(
	RectangleF rect
)

Parameters

rect
Type: System.Drawing.RectangleF

RectangleF 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 PaintEventArgs e, 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 using Replace.

  • Creates 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 void IsVisibleRectangleF(PaintEventArgs e)
{

    // Set clip region.
    Region clipRegion = new Region(new Rectangle(50, 50, 100, 100));
    e.Graphics.SetClip(clipRegion, CombineMode.Replace);

    // Set up coordinates of rectangles.
    RectangleF rect1 = new RectangleF(100.0F, 100.0F, 20.0F, 20.0F);
    RectangleF rect2 = new RectangleF(200.0F, 200.0F, 20.0F, 20.0F);

    // If rectangle is visible, fill it.
    if (e.Graphics.IsVisible(rect1))
    {
        e.Graphics.FillRectangle(new SolidBrush(Color.Red), rect1);
    }
    if (e.Graphics.IsVisible(rect2))
    {
        e.Graphics.FillRectangle(new SolidBrush(Color.Blue), rect2);
    }
}

.NET Framework
Available since 1.1
Return to top
Show: