This documentation is archived and is not being maintained.

Rect.Offset Method (Rect, Double, Double)

Returns a rectangle that is offset from the specified rectangle by using the specified horizontal and vertical amounts.

Namespace:  System.Windows
Assembly:  WindowsBase (in WindowsBase.dll)

public static Rect Offset(
	Rect rect,
	double offsetX,
	double offsetY


Type: System.Windows.Rect
The rectangle to move.
Type: System.Double
The horizontal offset for the new rectangle.
Type: System.Double
The vertical offset for the new rectangle.

Return Value

Type: System.Windows.Rect
The resulting rectangle.

Calling this method with an empty rectangle (Rect.Empty) is not allowed.

The following example shows how to use the Offset(Rect, Double, Double) method to change the position of a rectangle.

private Point offsetExample4()
    // 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 a vector to use to offset the position of the rectangle.
    Vector vector1 = new Vector(20, 30);

    // The Offset method translates the specified rectangle by the specified horizontal 
    // and vertical amounts and returns the resulting Rect. 
    // resultRect location changed from 10,5 to 30,35.
    Rect resultRect = Rect.Offset(myRectangle, 20, 30);

    // This rectangle's location changed from 10,5 to 30,35.
    return resultRect.Location;


.NET Framework

Supported in: 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.