Skip to main content
A newer version of this page is available. .

CircularGauge Class

Represents a gauge that can have a circular, semi-circular or any round scale.

Namespace: DevExpress.XtraGauges.Win.Gauges.Circular

Assembly: DevExpress.XtraGauges.v18.1.Win.dll

Declaration

public class CircularGauge :
    BaseGaugeWin,
    ICircularGauge,
    IWinGauge

The following members accept/return CircularGauge objects:

Remarks

Circular gauges can be displayed as a part of a GaugeControl.

Circular gauges are appropriate for creating speedometers, tachometers, stopwatches, clocks, etc. The following image shows a set of circular gauges painted using various paint styles:

CircularGaugeSet

To specify the range of values displayed by a scale, use the ArcScale.MinValue and ArcScale.MaxValue properties. To specify the value to be indicated by a needle, associate the needle with a specific scale via its ArcScale property, and then set the value via the ArcScale.Value property.

See Circular Gauges to learn more.

Example

The following example shows how to create a circular gauge.

In the example, a circular gauge is created using the GaugeControlBase.AddCircularGauge method. The default elements (a scale, background layer, needle and spindle cap) are added to the circular gauge via the CircularGauge.AddDefaultElements method. Then, some of them are customized in a specific manner.

The result is displayed below:

CreateCircularGauge_ex

using DevExpress.XtraGauges.Win;
using DevExpress.XtraGauges.Win.Gauges.Circular;
using DevExpress.XtraGauges.Core.Model;

GaugeControl gc = new GaugeControl();

// Add a circular gauge.
CircularGauge circularGauge = gc.AddCircularGauge();

// Add the default elements (a scale, background layer, needle and spindle cap).
circularGauge.AddDefaultElements();

// Change the background layer's paint style.
ArcScaleBackgroundLayer background = circularGauge.BackgroundLayers[0];
background.ShapeType = BackgroundLayerShapeType.CircularFull_Style3;

// Customize the scale's settings.
ArcScaleComponent scale = circularGauge.Scales[0];
scale.MinValue = 0;
scale.MaxValue = 100;
scale.Value = 25;
scale.MajorTickCount = 6;
scale.MajorTickmark.FormatString = "{0:F0}";
scale.MajorTickmark.ShapeType = TickmarkShapeType.Circular_Style2_2;
scale.MajorTickmark.ShapeOffset = -9;
scale.MajorTickmark.AllowTickOverlap = true;
scale.MinorTickCount = 3;
scale.MinorTickmark.ShapeType = TickmarkShapeType.Circular_Style2_1;

// Change the needle's paint style.
ArcScaleNeedleComponent needle = circularGauge.Needles[0];
needle.ShapeType = NeedleShapeType.CircularFull_Style3;

// Add the gauge control to the form.
gc.Size = new Size(250, 250);
gc.Parent = this;

The following code snippets (auto-collected from DevExpress Examples) contain references to the CircularGauge class.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also