Updated: April 2011
Offsets a point's X and Y coordinates by the specified amounts.
Public Sub Offset ( _ offsetX As Double, _ offsetY As Double _ )
public void Offset( double offsetX, double offsetY )
public: void Offset( double offsetX, double offsetY )
member Offset : offsetX:float * offsetY:float -> unit
This operation is equivalent to adding a Point to a Vector.
Note that calling the Offset method will only have an effect if you can change the X and Y properties directly. Because Point is a value type, if you reference a Point object by using a property or indexer, you get a copy of the object, not a reference to the object. If you attempt to change X or Y on a property or indexer reference, a compiler error occurs. Similarly, calling Offset on the property or indexer will not change the underlying object. If you want to change the value of a Point that is referenced as a property or indexer, create a new Point, modify its fields, and then assign the Point back to the property or indexer.
The following example shows how to offset the X and Y values of a Point structure.
private Point offsetExample() { Point pointResult = new Point(10, 5); // Offset Point X value by 20 and Y value by 30. // point1 is now equal to (30,35) pointResult.Offset(20, 30); return pointResult; }
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
Date
History
Reason
April 2011
Added remark about using Offset with properties and indexers.
Information enhancement.
I am not sure why this is happening but, for me, the Offset method does not work with the Property declaration. For example, there is a property declared like this;
private System.Windows.Point mNewOffset;public System.Windows.Point NewOffset{get{return mNewOffset;}private set{mNewOffset = value;}}
and then when I call the Offset method on 'NewOffset' like this;
NewOffset.Offset(5, 5);
..nothing happens, and the value remains same as before.