Skip to main content
All docs
V25.1
  • TdxChartCustomSeries.DataBindingType Property

    Specifies the active data access mode.

    Declaration

    property DataBindingType: string read; write;

    Property Value

    Type Description
    string

    The name of the active data access mode. Refer to the Remarks section for details.

    Remarks

    Use the DataBindingType or DataBindingClass property to switch between available data access modes. Different TdxChartCustomSeries class descendants use different data binding setting classes:

    TdxChartXYSeries

    An XY series uses the following data binding classes depending on the DataBindingType property value:

    DataBindingType[1] Value DataBindingClass[2] Value Description
    'DB' TdxChartXYSeriesDBDataBinding An XY chart series connects to a dataset and loads all data records into memory.
    'Unbound' TdxChartXYSeriesUnboundDataBinding An XY chart series is not bound to a dataset. You need to populate series with data points manually.
    TdxChartSimpleSeries

    A simple series uses the following data binding classes depending on the DataBindingType property value:

    DataBindingType[1] Value DataBindingClass[2] Value Description
    'DB' TdxChartSimpleSeriesDBDataBinding A simple series connects to a dataset and loads all data records into memory.
    Unbound TdxChartSimpleSeriesUnboundDataBinding A simple series is not bound to a dataset. You need to populate series with data points manually.

    Code Example: Create Three Stacked Bar Series in Unbound Mode

    The following code example creates three stacked bar series with identical appearance settings in unbound data access mode:

    uses cxDataStorage;  // Declares the TcxStringValueType class
    // ...
    var
      AXYDiagram: TdxChartXYDiagram;
      AXY2018Series, AXY2019Series, AXY2020Series: TdxChartXYSeries;
      AStackedBarView: TdxChartXYSeriesStackedBarView;
      ADataBinding: TdxChartXYSeriesUnboundDataBinding;
    begin
      dxChartControl1.BeginUpdate;  // Initiates the following batch change
      try
        AXYDiagram := dxChartControl1.AddDiagram<TdxChartXYDiagram>('DevAV Sales By Region');
        AXYDiagram.Title.Appearance.FontOptions.Size := 20;
        AXYDiagram.Axes.AxisY.Title.Text := 'Millions of Dollars';
        AXYDiagram.Axes.AxisY.Title.Appearance.FontOptions.Size := 14;
        AXY2018Series := AXYDiagram.AddSeries('2018');  // Creates a new series with the caption "2018"
        // Selects the unbound data access mode
        AXY2018Series.DataBindingClass := TdxChartXYSeriesUnboundDataBinding;
        ADataBinding := AXY2018Series.DataBinding as TdxChartXYSeriesUnboundDataBinding;
        // Selects the string data type for arguments
        ADataBinding.ArgumentField.ValueTypeClass := TcxStringValueType;
        AXY2018Series.ViewClass := TdxChartXYSeriesStackedBarView;  // Selects the Stacked Bar series View
        AStackedBarView := AXY2018Series.View as TdxChartXYSeriesStackedBarView;
        AStackedBarView.ValueLabels.Visible := True;  // Displays value labels on bars
        AStackedBarView.ValueLabels.TextFormat := '{V:0.000}';  // Changes the number display format
        AStackedBarView.ValueLabels.Appearance.FontOptions.Bold := True;
        AXY2018Series.Points.Add('Asia', 4.2372);
        AXY2018Series.Points.Add('Australia', 1.7871);
        AXY2018Series.Points.Add('Europe', 3.0884);
        AXY2018Series.Points.Add('North America', 3.4855);
        AXY2018Series.Points.Add('South America', 1.6027);
        AXY2019Series := AXYDiagram.AddSeries;  // Creates a new series with the default settings
        AXY2019Series.AssignFrom(AXY2018Series);  // Copies all settings from the "2018" series
        AXY2019Series.Caption := '2019';  // Defines a different series caption
        AXY2019Series.Points.Add('Asia', 4.7685);
        AXY2019Series.Points.Add('Australia', 1.9576);
        AXY2019Series.Points.Add('Europe', 3.3579);
        AXY2019Series.Points.Add('North America', 3.7477);
        AXY2019Series.Points.Add('South America', 1.8237);
        AXY2020Series := AXYDiagram.AddSeries('2020');  // Creates a new series with the default settings
        AXY2020Series.AssignFrom(AXY2018Series);  // Copies all settings from the "2018" series
        AXY2020Series.Caption := '2020';  // Defines a different series caption
        AXY2020Series.Points.Add('Asia', 5.289);
        AXY2020Series.Points.Add('Australia', 2.2727);
        AXY2020Series.Points.Add('Europe', 3.7257);
        AXY2020Series.Points.Add('North America', 4.1825);
        AXY2020Series.Points.Add('South America', 2.1172);
      finally
        dxChartControl1.EndUpdate;  // Calls EndUpdate regardless of the batch operation's success
      end;
    end;
    

    VCL Chart Control: An XY Diagram Example with Three Stacked Bar Series

    Default Value

    The DataBindingType property’s default value is 'Unbound'.

    Footnotes
    1. The DataBindingType property setter updates DataBindingClass and DataBinding property values according to the selected data access mode.

    2. The DataBindingClass property setter updates DataBindingType and DataBinding property values according to the selected data access mode.

    See Also