Devexpress Chartcontrol 系列选择(并取一个系列值)

Devexpress Chartcontrol Series selection (and take a serie value )

我正在制作带有 chartcontrolseries 条的 Full-Stacked Bar 图表。我的图表非常有用。

我的问题是关于事件分别处理每个系列。我处理我的图表控件的 MouseClick(或 ObjectHotTrackedObjectSelected。我也尝试过它们)事件但是当我点击它们时我无法单独获取每个系列值。

我该怎么做?我查阅了 devexpress 文档,但一无所获。

简而言之:我想取我点击的值。我该怎么做?

提前致谢

首先你必须将 ChartControl.RuntimeHitTesting 属性 设置为 true,然后尝试 ChartControl.MouseClick 中的代码:

private void Form1_Load(object sender, EventArgs e)
{
    chartControl1.CrosshairEnabled = DefaultBoolean.False;
    chartControl1.RuntimeHitTesting = true;
}

private void chartControl1_MouseClick(object sender, MouseEventArgs e)
{
    // Obtain hit information under the test point.
    ChartHitInfo hi = chartControl1.CalcHitInfo(e.X, e.Y);

    // Obtain the series point under the test point.
    SeriesPoint point = hi.SeriesPoint;

    // Check whether the series point was clicked or not.
    if (point != null)
    {
        // Obtain the series point argument.
        string argument = "Argument: " + point.Argument.ToString();

        // Obtain series point values.
        string values = "Value(s): " + point.Values[0].ToString();
        if (point.Values.Length > 1)
        {
            for (int i = 1; i < point.Values.Length; i++)
            {
                values = values + ", " + point.Values[i].ToString();
            }
        }

        MessageBox.Show(argument + "\n" + values, "SeriesPoint Data");
    }
}