windowsforms-devexpress-dot-xtragauges-dot-win-dot-gauges-dot-state-8e4a550a.md
Represents an element of a StateIndicatorGauge.
Namespace : DevExpress.XtraGauges.Win.Gauges.State
Assembly : DevExpress.XtraGauges.v25.2.Win.dll
NuGet Package : DevExpress.Win.Gauges
public class StateIndicatorComponent :
StateIndicator,
ISupportInitialize,
IBindableComponent,
IComponent,
IDisposable,
ICustomizationFrameClient,
ISupportCustomizeAction,
ISupportVisualDesigning,
ISupportPropertyGridWrapper,
ISupportAssign<StateIndicatorComponent>
Public Class StateIndicatorComponent
Inherits StateIndicator
Implements ISupportInitialize,
IBindableComponent,
IComponent,
IDisposable,
ICustomizationFrameClient,
ISupportCustomizeAction,
ISupportVisualDesigning,
ISupportPropertyGridWrapper,
ISupportAssign(Of StateIndicatorComponent)
The following members return StateIndicatorComponent objects:
See State Indicator Gauges to learn more.
The following example shows how to create a state indicator gauge.
In the example a state indicator gauge is created using the GaugeControlBase.AddStateIndicatorGauge method. Then, a state indicator containing four states is added to this gauge. To set the initial state for the state indicator, the StateIndicator.StateIndex property is used.
The result is displayed below:
using DevExpress.XtraGauges.Win;
using DevExpress.XtraGauges.Core.Model;
using DevExpress.XtraGauges.Core.Base;
using DevExpress.XtraGauges.Win.Gauges.State;
GaugeControl gc = new GaugeControl();
// Add a state indicator gauge.
StateIndicatorGauge siGauge = gc.AddStateIndicatorGauge();
// Add a state indicator.
StateIndicatorComponent stateIndicator = siGauge.AddIndicator();
// Add states
StateIndicatorShapeType[] shapes = new StateIndicatorShapeType[] {
StateIndicatorShapeType.TrafficLight1,
StateIndicatorShapeType.TrafficLight2,
StateIndicatorShapeType.TrafficLight3,
StateIndicatorShapeType.TrafficLight4
};
stateIndicator.States.Clear();
foreach(StateIndicatorShapeType shape in shapes) {
IndicatorState state = new IndicatorState();
state.ShapeType = shape;
stateIndicator.States.Add(state);
}
// Set the current state.
stateIndicator.StateIndex = 1;
// Set the indicator's size.
stateIndicator.Size = new SizeF(100, 200);
// Add the gauge control to the form.
gc.Size = new Size(250, 250);
gc.Parent = this;
Imports DevExpress.XtraGauges.Win
Imports DevExpress.XtraGauges.Core.Model
Imports DevExpress.XtraGauges.Core.Base
Imports DevExpress.XtraGauges.Win.Gauges.State
Private gc As GaugeControl = New GaugeControl()
' Add a state indicator gauge.
Private siGauge As StateIndicatorGauge = gc.AddStateIndicatorGauge()
' Add a state indicator.
Private stateIndicator As StateIndicatorComponent = siGauge.AddIndicator()
' Add states
Private shapes As StateIndicatorShapeType() = New StateIndicatorShapeType() _
{ StateIndicatorShapeType.TrafficLight1, StateIndicatorShapeType.TrafficLight2, _
StateIndicatorShapeType.TrafficLight3, StateIndicatorShapeType.TrafficLight4 }
stateIndicator.States.Clear()
For Each shape As StateIndicatorShapeType In shapes
Dim state As IndicatorState = New IndicatorState()
state.ShapeType = shape
stateIndicator.States.Add(state)
Next shape
' Set the current state.
stateIndicator.StateIndex = 1
' Set the indicator's size.
stateIndicator.Size = New SizeF(100, 200)
' Add the gauge control to the form.
gc.Size = New Size(250, 250)
gc.Parent = Me
Object BaseObject DevExpress.XtraGauges.Core.Base.BaseElement<DevExpress.XtraGauges.Core.Primitive.IRenderableElement> DevExpress.XtraGauges.Core.Base.BaseLeaf<DevExpress.XtraGauges.Core.Primitive.IRenderableElement> BaseLeafPrimitive DevExpress.XtraGauges.Core.Model.BaseScaleIndependentComponent<DevExpress.XtraGauges.Core.Model.BaseStateIndicatorProvider> StateIndicator StateIndicatorComponent
See Also