# Rect.Union Method

## Definition

Creates a rectangle that is exactly large enough to contain a given rectangle and a specified point or second rectangle.

 Union(Point) Expands the current rectangle exactly enough to contain the specified point. Union(Rect) Expands the current rectangle exactly enough to contain the specified rectangle. Union(Rect, Point) Creates a rectangle that is exactly large enough to include the specified rectangle and the specified point. Union(Rect, Rect) Creates a rectangle that is exactly large enough to contain the two specified rectangles.

## Union(Point)

Expands the current rectangle exactly enough to contain the specified point.

``````public:
void Union(System::Windows::Point point);``````
``public void Union (System.Windows.Point point);``
``member this.Union : System.Windows.Point -> unit``
``Public Sub Union (point As Point)``

#### Parameters

point
Point

The point to include.

### Examples

The following example shows how to use the Union(Point) method to expand the current rectangle exactly enough to contain a given Point.

``````private Rect unionExample1()
{
// Initialize new rectangle.
Rect myRectangle = new Rect();

// The Location property specifies the coordinates of the upper left-hand
// corner of the rectangle.
myRectangle.Location = new Point(10, 5);

// Set the Size property of the rectangle with a width of 200
// and a height of 50.
myRectangle.Size = new Size(200, 50);

// The Union method expands the current rectangle exactly enough to contain
// the specified point. myRectangle expands to a location of 0,0 and a size
// of 210,55.
myRectangle.Union(new Point(0,0));

// Returns 0,0,210,55
return myRectangle;
}
``````

## Union(Rect)

Expands the current rectangle exactly enough to contain the specified rectangle.

``````public:
void Union(System::Windows::Rect rect);``````
``public void Union (System.Windows.Rect rect);``
``member this.Union : System.Windows.Rect -> unit``
``Public Sub Union (rect As Rect)``

#### Parameters

rect
Rect

The rectangle to include.

### Examples

The following example shows how to use the Union(Rect) method to expand the current rectangle exactly enough to contain the specified rectangle.

``````private Rect unionExample2()
{
// Initialize new rectangle.
Rect myRectangle = new Rect();

// The Location property specifies the coordinates of the upper left-hand
// corner of the rectangle.
myRectangle.Location = new Point(10, 5);

// Set the Size property of the rectangle with a width of 200
// and a height of 50.
myRectangle.Size = new Size(200, 50);

// Create second rectangle.
Rect myRectangle2 = new Rect();
myRectangle2.Location = new Point(0, 0);
myRectangle2.Size = new Size(200, 50);

// The Union method expands the current rectangle exactly enough to contain
// the specified rectangle. myRectangle expands to a location of 0,0 and a size
// of 210,55.
myRectangle.Union(myRectangle2);

// Returns 0,0,210,55
return myRectangle;
}
``````

## Union(Rect, Point)

Creates a rectangle that is exactly large enough to include the specified rectangle and the specified point.

``````public:
static System::Windows::Rect Union(System::Windows::Rect rect, System::Windows::Point point);``````
``public static System.Windows.Rect Union (System.Windows.Rect rect, System.Windows.Point point);``
``static member Union : System.Windows.Rect * System.Windows.Point -> System.Windows.Rect``
``Public Shared Function Union (rect As Rect, point As Point) As Rect``

#### Parameters

rect
Rect

The rectangle to include.

point
Point

The point to include.

#### Returns

Rect

A rectangle that is exactly large enough to contain the specified rectangle and the specified point.

### Examples

The following example shows how to use the Union(Rect, Point) method to create a rectangle that is exactly large enough to contain a given rectangle and a given Point.

``````private Rect unionExample3()
{
// Initialize new rectangle.
Rect myRectangle = new Rect();

// The Location property specifies the coordinates of the upper left-hand
// corner of the rectangle.
myRectangle.Location = new Point(10, 5);

// Set the Size property of the rectangle with a width of 200
// and a height of 50.
myRectangle.Size = new Size(200, 50);

// Create second rectangle.
Rect myRectangle2 = new Rect();
myRectangle2.Location = new Point(0, 0);
myRectangle2.Size = new Size(200, 50);

// The Union method expands the current rectangle exactly enough to contain
// the specified rectangle and the specified Point. In this example, returnRect
// expands to a location of 0,0 and a size of 250,60.
Rect returnRect = Rect.Union(myRectangle2, new Point(250,60));

// Returns 0,0,250,60
return returnRect;
}
``````

## Union(Rect, Rect)

Creates a rectangle that is exactly large enough to contain the two specified rectangles.

``````public:
static System::Windows::Rect Union(System::Windows::Rect rect1, System::Windows::Rect rect2);``````
``public static System.Windows.Rect Union (System.Windows.Rect rect1, System.Windows.Rect rect2);``
``static member Union : System.Windows.Rect * System.Windows.Rect -> System.Windows.Rect``
``Public Shared Function Union (rect1 As Rect, rect2 As Rect) As Rect``

#### Parameters

rect1
Rect

The first rectangle to include.

rect2
Rect

The second rectangle to include.

#### Returns

Rect

The resulting rectangle.

### Examples

The following example shows how to use the Union(Rect, Rect) method to create a rectangle that is exactly large enough to contain two given rectangles.

``````private Rect unionExample4()
{
// Initialize new rectangle.
Rect myRectangle = new Rect();

// The Location property specifies the coordinates of the upper left-hand
// corner of the rectangle.
myRectangle.Location = new Point(10, 5);

// Set the Size property of the rectangle with a width of 200
// and a height of 50.
myRectangle.Size = new Size(200, 50);

// Create second rectangle.
Rect myRectangle2 = new Rect();
myRectangle2.Location = new Point(0, 0);
myRectangle2.Size = new Size(200, 50);

// Create a third rectangle.
Rect myRectangle3 = new Rect();
myRectangle3.Location = new Point(210, 60);
myRectangle3.Size = new Size(50, 50);

// The Union method expands the current rectangle exactly enough to contain
// the two specified rectangles. In this example, returnRect expands to
// a location of 0,0 and a size of 260,110.
Rect returnRect = Rect.Union(myRectangle2, myRectangle3);

// Returns 0,0,260,110
return returnRect;
}
``````