在 Winforms 图表中突出显示一个 LegendItem

Highlight one LegendItem in Winforms Chart

如标题所示,我只想突出显示 Winforms 图表的一个 LegendItem。 (我不想改变系列的颜色!我只想改变LegendItem Text的Color或LegendItem的BackgroundColor)

我尝试了以下方法,但似乎没有任何改变..

LegendItem legendItem = (LegendItem)result.Object;
legendItem.BorderColor = Color.BlueViolet;
legendItem.MarkerColor = Color.BlueViolet;
legendItem.ShadowColor = Color.BlueViolet;
legendItem.Color = Color.BlueViolet;
legendItem.BackSecondaryColor = Color.BlueViolet;
legendItem.BackImageTransparentColor = Color.BlueViolet;
legendItem.MarkerBorderColor = Color.BlueViolet;
legendItem.SeparatorColor = Color.BlueViolet;

我的问题有解决方案吗?

您必须处理 CustomizeLegend 事件:

    private void chart1_CustomizeLegend(object sender, CustomizeLegendEventArgs e)
    {
        foreach (LegendItem li in e.LegendItems)
        {
            if (li.Cells[1].Text == "Series2")
            {
                li.Cells[1].BackColor = Color.DarkGreen;
                li.Cells[1].ForeColor = Color.White;
            }
        }
    }