This topic has not yet been rated - Rate this topic

LinearGradientBrush Class

Encapsulates a Brush with a linear gradient. This class cannot be inherited.

System.Object
  System.MarshalByRefObject
    System.Drawing.Brush
      System.Drawing.Drawing2D.LinearGradientBrush

Namespace:  System.Drawing.Drawing2D
Assembly:  System.Drawing (in System.Drawing.dll)
public sealed class LinearGradientBrush : Brush

The LinearGradientBrush type exposes the following members.

  Name Description
Public method LinearGradientBrush(Point, Point, Color, Color) Initializes a new instance of the LinearGradientBrush class with the specified points and colors.
Public method LinearGradientBrush(PointF, PointF, Color, Color) Initializes a new instance of the LinearGradientBrush class with the specified points and colors.
Public method LinearGradientBrush(Rectangle, Color, Color, LinearGradientMode) Creates a new instance of the LinearGradientBrush class based on a rectangle, starting and ending colors, and orientation.
Public method LinearGradientBrush(Rectangle, Color, Color, Single) Creates a new instance of the LinearGradientBrush class based on a rectangle, starting and ending colors, and an orientation angle.
Public method LinearGradientBrush(RectangleF, Color, Color, LinearGradientMode) Creates a new instance of the LinearGradientBrush based on a rectangle, starting and ending colors, and an orientation mode.
Public method LinearGradientBrush(RectangleF, Color, Color, Single) Creates a new instance of the LinearGradientBrush class based on a rectangle, starting and ending colors, and an orientation angle.
Public method LinearGradientBrush(Rectangle, Color, Color, Single, Boolean) Creates a new instance of the LinearGradientBrush class based on a rectangle, starting and ending colors, and an orientation angle.
Public method LinearGradientBrush(RectangleF, Color, Color, Single, Boolean) Creates a new instance of the LinearGradientBrush class based on a rectangle, starting and ending colors, and an orientation angle.
Top
  Name Description
Public property Blend Gets or sets a Blend that specifies positions and factors that define a custom falloff for the gradient.
Public property GammaCorrection Gets or sets a value indicating whether gamma correction is enabled for this LinearGradientBrush.
Public property InterpolationColors Gets or sets a ColorBlend that defines a multicolor linear gradient.
Public property LinearColors Gets or sets the starting and ending colors of the gradient.
Public property Rectangle Gets a rectangular region that defines the starting and ending points of the gradient.
Public property Transform Gets or sets a copy Matrix that defines a local geometric transform for this LinearGradientBrush.
Public property WrapMode Gets or sets a WrapMode enumeration that indicates the wrap mode for this LinearGradientBrush.
Top
  Name Description
Public method Clone Creates an exact copy of this LinearGradientBrush. (Overrides Brush.Clone().)
Public method CreateObjRef Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.)
Public method Dispose() Releases all resources used by this Brush object. (Inherited from Brush.)
Protected method Dispose(Boolean) Releases the unmanaged resources used by the Brush and optionally releases the managed resources. (Inherited from Brush.)
Public method Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected method Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Brush.)
Public method GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public method GetLifetimeService Retrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method InitializeLifetimeService Obtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected method MemberwiseClone() Creates a shallow copy of the current Object. (Inherited from Object.)
Protected method MemberwiseClone(Boolean) Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.)
Public method MultiplyTransform(Matrix) Multiplies the Matrix that represents the local geometric transform of this LinearGradientBrush by the specified Matrix by prepending the specified Matrix.
Public method MultiplyTransform(Matrix, MatrixOrder) Multiplies the Matrix that represents the local geometric transform of this LinearGradientBrush by the specified Matrix in the specified order.
Public method ResetTransform Resets the Transform property to identity.
Public method RotateTransform(Single) Rotates the local geometric transform by the specified amount. This method prepends the rotation to the transform.
Public method RotateTransform(Single, MatrixOrder) Rotates the local geometric transform by the specified amount in the specified order.
Public method ScaleTransform(Single, Single) Scales the local geometric transform by the specified amounts. This method prepends the scaling matrix to the transform.
Public method ScaleTransform(Single, Single, MatrixOrder) Scales the local geometric transform by the specified amounts in the specified order.
Public method SetBlendTriangularShape(Single) Creates a linear gradient with a center color and a linear falloff to a single color on both ends.
Public method SetBlendTriangularShape(Single, Single) Creates a linear gradient with a center color and a linear falloff to a single color on both ends.
Protected method SetNativeBrush In a derived class, sets a reference to a GDI+ brush object. (Inherited from Brush.)
Public method SetSigmaBellShape(Single) Creates a gradient falloff based on a bell-shaped curve.
Public method SetSigmaBellShape(Single, Single) Creates a gradient falloff based on a bell-shaped curve.
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Public method TranslateTransform(Single, Single) Translates the local geometric transform by the specified dimensions. This method prepends the translation to the transform.
Public method TranslateTransform(Single, Single, MatrixOrder) Translates the local geometric transform by the specified dimensions in the specified order.
Top

This class encapsulates both two-color gradients and custom multicolor gradients.

All linear gradients are defined along a line specified either by the width of a rectangle or by two points.

By default, a two-color linear gradient is an even horizontal linear blend from the starting color to the ending color along the specified line. Customize the blend pattern using the Blend class, the SetSigmaBellShape methods, or the SetBlendTriangularShape methods. Customize the direction of the gradient by specifying the LinearGradientMode enumeration or the angle in the constructor.

Use the InterpolationColors property to create a multicolor gradient.

The Transform property specifies a local geometric transform applied to the gradient.

The following example creates a horizontal LinearGradientBrush; the color components change linearly as you move from a horizontal coordinate of 0 to a horizontal coordinate of 200. For example, a point whose first coordinate is halfway between 0 and 200 will have a blue component that is halfway between 0 and 255. This example is designed for use with Windows Forms. The following code example is designed for use with Windows Forms, and it requires the PaintEventArgs e, which is a parameter of PaintEventHandler.


LinearGradientBrush linGrBrush = new LinearGradientBrush(
   new Point(0, 10),
   new Point(200, 10),
   Color.FromArgb(255, 255, 0, 0),   // Opaque red
   Color.FromArgb(255, 0, 0, 255));  // Opaque blue

Pen pen = new Pen(linGrBrush);

e.Graphics.DrawLine(pen, 0, 10, 200, 10);
e.Graphics.FillEllipse(linGrBrush, 0, 30, 200, 100);
e.Graphics.FillRectangle(linGrBrush, 0, 155, 500, 30);


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, 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.
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ