Skip to main content

WaterfallRelativeValueOptions.StartBarLabel Property

Gets or sets the start bar label.

Namespace: DevExpress.Xpf.Charts

Assembly: DevExpress.Xpf.Charts.v23.2.dll

NuGet Package: DevExpress.Wpf.Charts

Declaration

public string StartBarLabel { get; set; }

Property Value

Type Description
String

A string value that specifies the start bar label.

Remarks

The StartBarLabel value is used as an axis label and in the crosshair label to denote the start bar.

Example

This example shows how to create a waterfall chart.

Waterfall chart

Markup:

<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WaterfallChart"
        xmlns:dxc="http://schemas.devexpress.com/winfx/2008/xaml/charts" 
        x:Class="WaterfallChart.MainWindow"
        mc:Ignorable="d"
        Title="MainWindow" Height="500" Width="800">
    <Grid>
        <dxc:ChartControl>
            <dxc:XYDiagram2D dxc:WaterfallSeries2D.TotalBarBrush="Gray"
                             dxc:WaterfallSeries2D.StartBarBrush="LightGray"
                             dxc:WaterfallSeries2D.SubtotalBarBrush="DarkGray"
                             dxc:WaterfallSeries2D.ConnectorBrush="Black">
                <dxc:WaterfallSeries2D.ValueOptions>
                    <dxc:WaterfallRelativeValueOptions StartBarValue="30" 
                                                       StartBarLabel="Start Value"
                                                       ShowTotal="True"
                                                       TotalLabel="Total">
                        <dxc:WaterfallRelativeValueOptions.Subtotals>
                            <dxc:Subtotal PointIndex="2" Label="Subtotal"/>
                        </dxc:WaterfallRelativeValueOptions.Subtotals>
                    </dxc:WaterfallRelativeValueOptions>
                </dxc:WaterfallSeries2D.ValueOptions>
                <dxc:WaterfallSeries2D DisplayName="Waterfall" 
                                       LabelsVisibility="True"
                                       DataSource="{Binding}"
                                       ArgumentScaleType="Qualitative"
                                       ArgumentDataMember="Argument"
                                       ValueDataMember="Value"
                                       RisingBarBrush="#FF92CEB5" 
                                       FallingBarBrush="#FFDA5859">
                    <dxc:WaterfallSeries2D.Model>
                        <dxc:BorderlessSimpleWaterfall2DModel/>
                    </dxc:WaterfallSeries2D.Model>
                </dxc:WaterfallSeries2D>
                <dxc:XYDiagram2D.AxisX>
                    <dxc:AxisX2D TickmarksMinorVisible="False"/>
                </dxc:XYDiagram2D.AxisX>
            </dxc:XYDiagram2D>
        </dxc:ChartControl>
    </Grid>
</Window>

Code-behind:

using System.Collections.Generic;
using System.Windows;

namespace WaterfallChart {
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window {
        public MainWindow() {
            InitializeComponent();
            this.DataContext = DataLoader.GetDataPoints();
        }
    }
    class DataLoader {
        public static List<DataPoint> GetDataPoints() {
            List<DataPoint> list = new List<DataPoint> {
                new DataPoint("November", 20),
                new DataPoint("December", 10),
                new DataPoint("January", -15),
                new DataPoint("February", 10),
                new DataPoint("March", -10)
            };
            return list;
        }
    }
    public class DataPoint {
        public string Argument { get; private set; }
        public double Value { get; private set; }
        public DataPoint(string arg, double val) {
            Argument = arg;
            Value = val;
        }
    }
}
See Also