AxisLabelItemBase.AxisValue Property

Provides access to the axis value to which an axis label item corresponds.

Namespace: DevExpress.XtraCharts

Assembly: DevExpress.XtraCharts.v20.1.dll

Declaration

[XtraChartsLocalizableCategory(XtraChartsCategory.Misc)]
public object AxisValue { get; }
<XtraChartsLocalizableCategory(XtraChartsCategory.Misc)>
Public ReadOnly Property AxisValue As Object

Property Value

Type Description
Object

An object that specifies the axis value.

Remarks

An axis label item is the specific instance of the AxisLabelItem class, obtained in the ChartControl.CustomDrawAxisLabel (or WebChartControl.CustomDrawAxisLabel) event handler.

AxisLabelItem

The axis value obtained using the AxisValue property is determined in the measure units appropriate for the scale type of the axis. To obtain an internal floating representation of this value, use the AxisLabelItemBase.AxisValueInternal property.

For more information, refer to Axis Labels.

Examples

Apart from the capability to customize the overall appearance of axis labels, you can obtain individual axis labels at runtime. Then, it's possible to apply all the options available for axis labels to them, individually. For example, based on some criteria (e.g. an axis value threshold), you can apply different formatting to axis labels.

For this, the special ChartControl.CustomDrawAxisLabel event is introduced. Handle it to obtain axis labels.

NOTE

For the WebChartControl you should handle its WebChartControl.CustomDrawSeries event to implement this task.

The following code demonstrates one possible implementation of this capability.

private void chartControl1_CustomDrawAxisLabel(object sender, CustomDrawAxisLabelEventArgs e) {
    AxisBase axis = e.Item.Axis;
    if (axis is AxisY || axis is AxisY3D || axis is RadarAxisY) {
        double axisValue = (double)e.Item.AxisValue;
        if (axisValue < 0) {
            e.Item.TextColor = Color.Red;
        }
        else if (axisValue > 0) {
            e.Item.Text = "+" + e.Item.Text;
            e.Item.TextColor = Color.Green;
        }
        else if (axisValue == 0) {
            e.Item.Text = "Zero";
        }
    }
}
See Also