Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

How to: Add a Custom Legend Item

  • 2 minutes to read

This example demonstrates how to add a custom legend item to a legend.

View Example

Custom Legend Item

Create a CustomLegendItem object and add it to the CustomItems collection. Use the following properties to configure the custom item:

CustomLegendItem.MarkerImage
Returns the custom legend item’s marker image.
CustomLegendItem.Text
Gets or sets the text the custom legend item displays.

Note

To show custom and automatically generated legend items, set the LegendBase.ItemVisibilityMode to AutoGeneratedAndCustom.

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

namespace CustomLegendItemSample {
    public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e) {
            #region #CustomLegendItems
            // Create a new custom item.
            CustomLegendItem item = new CustomLegendItem();
            chart.Legend.CustomItems.Add(item);
            // Specify its text and marker.
            item.Text = "Custom Legend Item";
            FileStream outfile = new FileStream("Image\\DXLogo_16x16.png", FileMode.Open);
            DXImage image = DXImage.FromStream(outfile);
            item.MarkerImage.DXImage = image;

            // Set a value indicating that both autogenerated and custom items are displayed.
            chart.Legend.ItemVisibilityMode = LegendItemVisibilityMode.AutoGeneratedAndCustom;
            #endregion #CustomLegendItems
        }
    }
}