Region.GetBounds Method (Graphics)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets a RectangleF structure that represents a rectangle that bounds this Region on the drawing surface of a Graphics object.

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

public RectangleF GetBounds(
	Graphics g


Type: System.Drawing.Graphics

The Graphics on which this Region is drawn.

Return Value

Type: System.Drawing.RectangleF

A RectangleF structure that represents the bounding rectangle for this Region on the specified drawing surface.

Exception Condition

g is null.

The current transformation of the graphics context is used to compute the region interior on the drawing surface. The bounding rectangle is not always the smallest possible bounding rectangle depending on the current transformation.

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 GraphicsPath and adds an ellipse to it.

  • Fills the path with blue and draws it to the screen.

  • Creates a region that uses the GraphicsPath.

  • Gets the nonexcluded area of the region when combined with the second rectangle.

  • Gets the bounding rectangle for the region and draws it to the screen in red.

public void GetBoundsExample(PaintEventArgs e)

    // Create a GraphicsPath and add an ellipse to it.
    GraphicsPath myPath = new GraphicsPath();
    Rectangle ellipseRect = new Rectangle(20, 20, 100, 100);

    // Fill the path with blue and draw it to the screen.
    SolidBrush myBrush = new SolidBrush(Color.Blue);
    e.Graphics.FillPath(myBrush, myPath);

    // Create a region using the GraphicsPath.
    Region myRegion = new Region(myPath);

    // Get the bounding rectangle for myRegion and draw it to the

    // screen in Red.
    RectangleF boundsRect = myRegion.GetBounds(e.Graphics);
    e.Graphics.DrawRectangle(Pens.Red, Rectangle.Round(boundsRect));

.NET Framework
Available since 1.1
Return to top