Legend.CustomItemTemplate Property

Gets or sets the DataTemplate that specifies how to convert a model object to a custom legend item.

Namespace: DevExpress.Xpf.Charts

Assembly: DevExpress.Xpf.Charts.v20.1.dll

Declaration

public DataTemplate CustomItemTemplate { get; set; }
Public Property CustomItemTemplate As DataTemplate

Property Value

Type Description
DataTemplate

A DataTemplate that specifies a generated legend custom item's parameters. The default is null (Nothing in Visual Basic).

Remarks

The following example generates custom legend items based on a collection of data objects:

<Window.DataContext>
    <local:ChartViewModel />
</Window.DataContext>
<!--...-->
<ChartControl>
    <dxc:ChartControl.Legends>
        <dxc:Legend x:Name="legend" 
                    Orientation="Vertical" 
                    CustomItemsSource="{Binding Path=CustomLegendItems}">
            <dxc:Legend.CustomItemTemplate>
                <DataTemplate>
                    <dxc:CustomLegendItem Text="{Binding Path=Text}" 
                                          MarkerBrush="{Binding Path=Brush}"/>
                </DataTemplate>
            </dxc:Legend.CustomItemTemplate>
        </dxc:Legend>
    </dxc:ChartControl.Legends>
<!--...-->
<ChartControl>
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Windows.Media;

namespace DxSample {
    public class ChartViewModel {
        public ObservableCollection<LegendItem> CustomLegendItems { get; set; }
        public ChartViewModel() {
            CustomLegendItems = new ObservableCollection<LegendItem>();
            CustomLegendItems.Add(new LegendItem { Text = "Custom Item 1", Brush = Brushes.Red });
            CustomLegendItems.Add(new LegendItem { Text = "Custom Item 2", Brush = Brushes.Green });
    }

    public class LegendItem {
        public string Text { get; set; }
        public Brush Brush { get; set; }
    }
}
See Also