C#鼠标单击图表上的数据点事件(C# mouse click events on datapoint

2019-10-16 18:03发布

我想创建一个图表,我使用图表从在Visual Studio 2010工具箱中这是第一次我试图做到这一点,到目前为止,我已经学会了怎么样创建数据点,并将它们添加图表的基础知识在为了得到图表的系列。 我想知道的是,如果它能够使数据点对用户可见(像点图表中的点),用户可以点击一个数据点,并得到一个特定的结果。 我当时的想法是,既然我创建的数据点是有使“点击”还是我必须创建为每个数据点单独鼠标点击事件的选项。 请原谅我我的无知,但我是新来这。 我在哪里可以找到一个指南,帮助我创建图表。 这里是我的代码的一部分至今:

chart1.Series[0].IsVisibleInLegend = false;
chart1.Series[0].ChartType = SeriesChartType.FastLine;

DateTime sday = Convert.ToDateTime(earnings1.dataGridView1[0, 0].Value.ToString());
chart1.Series[0].XValueType = ChartValueType.String;
int i = 0;
        foreach (DataGridViewRow dgvr in earnings1.dataGridView1.Rows)
        {
            decimal testing = Convert.ToDecimal(earnings1.dataGridView1[1, i].Value);
            testing = decimal.Truncate(testing);

            var point = new DataPoint(i+1, Convert.ToDouble(testing));

            point.Label = testing.ToString();
            point.Font = new Font("Century Gothic", 8, FontStyle.Bold);
            chart1.Series[0].Points.Add(point);
            chart1.Series[0].Points[i].AxisLabel = sday.ToString("dd/MM/yyyy");
            sday = sday.AddDays(1);
            i++;
          }

我在做什么是我有2列一个DataGridView。 一个日期和一个十进制数的另一列。 我创建与在x轴上的日期的图表(自定义标记,因为日期是从一个MySQL数据库和格式为yyyy:MM:DD和我将其转换为DD / MM /年)和在y轴上的值。 我每一天创造一个数据点带其值A-和我绘制它们的图表上。 我怎么能现在点击点,以便例如当我在24 /月/ 2012年的价值点击做类似的东西显示从数据库中在相应的日期一些其它信息。 预先感谢您的支持,任何帮助将真正的赞赏。 真诚乔治·乔治

Answer 1:

你不能对数据点添加click事件。 你能虽然做的是对数据点添加注释,并使用选择事件处理程序的注释。 相当不错的,因为你可以将它们设置属性,如字体,大小,边框类型,颜色等。



文章来源: C# mouse click events on datapoints in a chart