求助 dev chartcontrol 怎么获取鼠标所在位置X轴的值

时间:2022-01-05 10:49:10
求助 dev chartcontrol 怎么获取鼠标所在位置X轴的值
新人一个,求助各位大神,使用的是DEV Chartcontrol 15.1.5 控件.我有一个string name的变量 ,现在想取鼠标所在位置的X轴的值赋给name,比如我鼠标停在第二个柱子时,取得name=" S型游乐炮2015款B"  ,鼠标停在第一个柱子时,取得:name="动物王国" 

4 个解决方案

#2


已经在别的地方找到方法了。

#3


引用 2 楼 qq_27236267 的回复:
已经在别的地方找到方法了。

什么方法啊。

#4


引用 3 楼 ruhong1 的回复:
Quote: 引用 2 楼 qq_27236267 的回复:

已经在别的地方找到方法了。

什么方法啊。


直接上代码给你看了
 private void mousemove(object sender, MouseEventArgs e)
        {
            ChartHitInfo hitInfo = this.chart_machno.CalcHitInfo(e.Location);            

            StringBuilder builder = new StringBuilder();

            if (hitInfo.InDiagram)
                builder.AppendLine("进入");
            if (hitInfo.InNonDefaultPane)
                builder.AppendLine("在非默认的窗格: " + hitInfo.NonDefaultPane.Name);
            if (hitInfo.InAxis)
            {
                builder.AppendLine("中抽线: " + hitInfo.Axis.Name);
                if (hitInfo.AxisLabelItem != null)
                    builder.AppendLine("标签项目: " + hitInfo.AxisLabelItem.Text);
                if (hitInfo.AxisTitle != null)
                    builder.AppendLine("抽标题: " + hitInfo.AxisTitle.Text);
            }
            if (hitInfo.InChartTitle)
                builder.AppendLine("图表标题: " + hitInfo.ChartTitle.Text);

            if (hitInfo.InLegend)
                builder.AppendLine("In legend");

            if (hitInfo.InSeries)
                builder.AppendLine("系列: " + ((Series)hitInfo.Series).Name);
            if (hitInfo.InSeriesLabel)
            {
                builder.AppendLine("系列标签");
                builder.AppendLine("系列: " + ((Series)hitInfo.Series).Name);
            }
            if (hitInfo.SeriesPoint != null)
            {
                builder.AppendLine("Argument: " + hitInfo.SeriesPoint.Argument);
                if (!hitInfo.SeriesPoint.IsEmpty)
                    builder.AppendLine("值: " + hitInfo.SeriesPoint.Values[0]);

                   name = hitInfo.SeriesPoint.Argument;
                  
                 smtb1();

            }
            if (builder.Length > 0)
                toolTipController.ShowHint(builder.ToString(), this.chart_machno.PointToScreen(e.Location));
            else
                toolTipController.HideHint();
        }

#1


#2


已经在别的地方找到方法了。

#3


引用 2 楼 qq_27236267 的回复:
已经在别的地方找到方法了。

什么方法啊。

#4


引用 3 楼 ruhong1 的回复:
Quote: 引用 2 楼 qq_27236267 的回复:

已经在别的地方找到方法了。

什么方法啊。


直接上代码给你看了
 private void mousemove(object sender, MouseEventArgs e)
        {
            ChartHitInfo hitInfo = this.chart_machno.CalcHitInfo(e.Location);            

            StringBuilder builder = new StringBuilder();

            if (hitInfo.InDiagram)
                builder.AppendLine("进入");
            if (hitInfo.InNonDefaultPane)
                builder.AppendLine("在非默认的窗格: " + hitInfo.NonDefaultPane.Name);
            if (hitInfo.InAxis)
            {
                builder.AppendLine("中抽线: " + hitInfo.Axis.Name);
                if (hitInfo.AxisLabelItem != null)
                    builder.AppendLine("标签项目: " + hitInfo.AxisLabelItem.Text);
                if (hitInfo.AxisTitle != null)
                    builder.AppendLine("抽标题: " + hitInfo.AxisTitle.Text);
            }
            if (hitInfo.InChartTitle)
                builder.AppendLine("图表标题: " + hitInfo.ChartTitle.Text);

            if (hitInfo.InLegend)
                builder.AppendLine("In legend");

            if (hitInfo.InSeries)
                builder.AppendLine("系列: " + ((Series)hitInfo.Series).Name);
            if (hitInfo.InSeriesLabel)
            {
                builder.AppendLine("系列标签");
                builder.AppendLine("系列: " + ((Series)hitInfo.Series).Name);
            }
            if (hitInfo.SeriesPoint != null)
            {
                builder.AppendLine("Argument: " + hitInfo.SeriesPoint.Argument);
                if (!hitInfo.SeriesPoint.IsEmpty)
                    builder.AppendLine("值: " + hitInfo.SeriesPoint.Values[0]);

                   name = hitInfo.SeriesPoint.Argument;
                  
                 smtb1();

            }
            if (builder.Length > 0)
                toolTipController.ShowHint(builder.ToString(), this.chart_machno.PointToScreen(e.Location));
            else
                toolTipController.HideHint();
        }