如何在MS图表控件中更改序列类型图例的顺序

本文关键字:类型 型图 顺序 MS 控件 | 更新日期: 2023-09-27 18:28:00

我正在尝试更改代码后面图例(系列类型图例)的顺序。我已经尝试使用此处显示的LegendItemOrder属性。但这对我来说并不奏效。

我还尝试通过代码隐藏添加一个自定义图例事件,如图所示。自定义图例事件是使用以下代码添加的。但不确定要通过CustomizeLegendEventHandler(arg1,arg2)传递哪些参数,因为该定义有两个参数?

chart.CustomizeLegend += new EventHandler<CustomizeLegendEventArgs> (CustomizeLegendEventHandler);

事件处理程序定义如下所示。

private void CustomizeLegendEventHandler(object sender, CustomizeLegendEventArgs e)
    {
        if (e != null)
        {
        }
    }

请告知应该向CustomizeLegendEventHandler传递哪些参数,以及如何重新排序图例文本?

如何在MS图表控件中更改序列类型图例的顺序

我已经通过玩代码自己确定了答案。

问题1

自定义图例事件是使用以下代码添加的。但不确定要通过CustomizeLegendEventHandler(arg1,arg2)传递哪些参数,因为该定义有两个参数?

对于问题1,解决方案是可以在不传递任何参数的情况下附加事件处理程序,就像下面显示的代码一样。

chart.CustomizeLegend += new EventHandler<CustomizeLegendEventArgs>(CustomizeLegendEventHandler);

您可以使用事件处理程序对图例文本进行重新排序。请参阅下面的代码。

private void CustomizeLegendEventHandler(object sender, CustomizeLegendEventArgs e)
    {
        if (e != null && e.LegendItems.Count > 0)
        {
            e.LegendItems.Reverse();
        }
    }

以上代码将反转图例文本。