A newer version of this page is available. Switch to the current version.

ScrollingRange Class

Contains the settings that define the range through which it's possible to scroll an axis.

Namespace: DevExpress.XtraCharts

Assembly: DevExpress.XtraCharts.v18.2.dll


public class ScrollingRange :
Public Class ScrollingRange
    Inherits ChartElement


An instance of the ScrollingRange class can be obtained via the AxisRange.ScrollingRange property.

When scrolling is enabled for an axis (the XYDiagram2D.EnableAxisXScrolling or XYDiagram2D.EnableAxisYScrolling property is set to true), you have the capability to specify the range of an axis through which it can be scrolled. So, apart from the capability to specify an axis' visible range (via the AxisBase.Range property), the main settings exposed via the properties of the ScrollingRange class allow you to specify the axis' scrollable range.

By default, the scrollable range is automatically calculated, based upon a chart's data. However, if the ScrollingRange.Auto property is set to false, you can explicitly define the minimum and maximum axis values to which it's possible to scroll an axis. You can specify these values either in measurement units of an axis appropriate for its actual scale type (via the ScrollingRange.MinValue and ScrollingRange.MaxValue properties), or in internal floating representations of axis units with no regard to the scale type of an axis (via the ScrollingRange.MinValueInternal and ScrollingRange.MaxValueInternal properties).

For more information, refer to Visual Ranges and Whole Ranges and Zooming and Scrolling (2D XY-Charts).


This example demonstrates how to use the AxisBase.VisualRange property to define the visible range of an axis, and the AxisBase.WholeRange property to define its whole range.

For more information on axis range, refer to Visual Ranges and Whole Ranges .

using DevExpress.XtraCharts;
using System;
using System.Windows.Forms;

namespace WindowsFormsApplication1 {
    public partial class Form1 : Form {
        public Form1() {

        private void Form1_Load(object sender, EventArgs e) {

            // Create a chart control.
            ChartControl chartControl1 = new ChartControl();

            // Add the chart to the form.
            chartControl1.Dock = DockStyle.Fill;

            // Create a bar series and add points to it.
            Series series1 = new Series("Series 1", ViewType.Bar);
            series1.Points.Add(new SeriesPoint("A", new double[] { 26.25 }));
            series1.Points.Add(new SeriesPoint("B", new double[] { 1.52 }));
            series1.Points.Add(new SeriesPoint("C", new double[] { 22.21 }));
            series1.Points.Add(new SeriesPoint("D", new double[] { 15.35 }));
            series1.Points.Add(new SeriesPoint("E", new double[] { 4.15 }));

            // Add the series to the chart.

            // Cast the chart's diagram to the XYDiagram type, to access its axes.
            XYDiagram diagram = (XYDiagram)chartControl1.Diagram;

            // Enable the diagram's scrolling.
            diagram.EnableAxisXScrolling = true;
            diagram.EnableAxisYScrolling = true;

            // Define the whole range for the X-axis. 
            diagram.AxisX.WholeRange.Auto = false;
            diagram.AxisX.WholeRange.SetMinMaxValues("A", "D");

            // Disable the side margins 
            // (this has an effect only for certain view types).
            diagram.AxisX.VisualRange.AutoSideMargins = false;

            // Limit the visible range for the X-axis.
            diagram.AxisX.VisualRange.Auto = false;
            diagram.AxisX.VisualRange.SetMinMaxValues("B", "C");

            // Define the whole range for the Y-axis. 
            diagram.AxisY.WholeRange.Auto = false;
            diagram.AxisY.WholeRange.SetMinMaxValues(1, 26);


See Also