Back to Devexpress

ScrollingRange Class

corelibraries-devexpress-dot-xtracharts-0b47637c.md

latest7.9 KB
Original Source

ScrollingRange Class

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

Namespace : DevExpress.XtraCharts

Assembly : DevExpress.XtraCharts.v25.2.dll

NuGet Package : DevExpress.Charts

Declaration

csharp
public class ScrollingRange :
    ChartElement
vb
Public Class ScrollingRange
    Inherits ChartElement

Remarks

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.VisualRange 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).

Example

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.

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

namespace WindowsFormsApplication1 {
    public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
        }

        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;
            this.Controls.Add(chartControl1);

            // 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.
            chartControl1.Series.Add(series1);

            // 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);
        }
    }
}
vb
Imports DevExpress.XtraCharts
Imports System
Imports System.Windows.Forms

Namespace WindowsFormsApplication1
    Partial Public Class Form1
        Inherits Form

        Public Sub New()
            InitializeComponent()
        End Sub

        Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load

            ' Create a chart control.
            Dim chartControl1 As New ChartControl()

            ' Add the chart to the form.
            chartControl1.Dock = DockStyle.Fill
            Me.Controls.Add(chartControl1)

            ' Create a bar series and add points to it.
            Dim series1 As 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.
            chartControl1.Series.Add(series1)

            ' Cast the chart's diagram to the XYDiagram type, to access its axes.
            Dim diagram As XYDiagram = CType(chartControl1.Diagram, XYDiagram)

            ' 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)
        End Sub
    End Class
End Namespace

Inheritance

Object ChartElement ScrollingRange

See Also

ScrollingRange Members

Axis Ranges

Zoom and Scroll in 2D XY-Charts

DevExpress.XtraCharts Namespace