Chart如何获得当前点的X和Y的value?

单线程加锁 2012-08-30 01:51:32
我想在CHart内加个鼠标右键事件,在点击Chart之后则在下面的Datagrideview中显示X\Y值及其相关的详细信息,要怎么样实现?
...全文
705 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
代码誊写工 2012-08-31
  • 打赏
  • 举报
回复
先判断一下Series.count是否大于零,如果为零则直接退出
单线程加锁 2012-08-31
  • 打赏
  • 举报
回复
分也加了,贴也结了,不过还得负责任的更新一下。
如果Result.Series为空的时候是会出现异常的。

private void chart1_MouseClick(object sender, MouseEventArgs e)
{

if (e.Button == System.Windows.Forms.MouseButtons.Left)
{
MessageBox.Show(chart1.Series[0].ToolTip.ToCharArray()[0].ToString());
}
if (e.Button == System.Windows.Forms.MouseButtons.Right)
{
System.Windows.Forms.DataVisualization.Charting.HitTestResult Result = new System.Windows.Forms.DataVisualization.Charting.HitTestResult();
Result = chart1.HitTest(e.X, e.Y);
if(Result.Series!=null)
MessageBox.Show("'X轴:'" + Result.Series.Points[Result.PointIndex].XValue.ToString() + "'Y轴:'" + Result.Series.Points[Result.PointIndex].YValues[0].ToString());
}


}

单线程加锁 2012-08-31
  • 打赏
  • 举报
回复
3L高手,已经解决了,结贴给分。C#的代码如下。


private void chart1_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Left)
{
MessageBox.Show(chart1.Series[0].ToolTip.ToCharArray()[0].ToString());
}
if (e.Button == System.Windows.Forms.MouseButtons.Right)
{
System.Windows.Forms.DataVisualization.Charting.HitTestResult Result = new System.Windows.Forms.DataVisualization.Charting.HitTestResult();
Result = chart1.HitTest(e.X, e.Y);
MessageBox.Show("'X轴:'" + Result.Series.Points[Result.PointIndex].XValue.ToString() + "'Y轴:'" + Result.Series.Points[Result.PointIndex].XValue.ToString());
}


}
单线程加锁 2012-08-31
  • 打赏
  • 举报
回复
呵呵,多谢了。分一定加,我先试一下哈。
代码誊写工 2012-08-30
  • 打赏
  • 举报
回复
开玩笑的,分多了要是能换美女还差不多。
代码誊写工 2012-08-30
  • 打赏
  • 举报
回复

Private Sub Chart1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Chart1.MouseDown
If e.Button <> Windows.Forms.MouseButtons.Right Then Exit Sub
Dim result As HitTestResult = Chart1.HitTest(e.X, e.Y)
If result.ChartElementType <> ChartElementType.DataPoint Then
Exit Sub
End If
Debug.Print(result.Series.Points(result.PointIndex).XValue.ToString & "," & result.Series.Points(result.PointIndex).YValues(0).ToString)
Exit Sub

[B][I][size=6]你把最后那个Debug.Print替换了就行了[/size][/I][/B]
lb331004 2012-08-30
  • 打赏
  • 举报
回复

[b]我也不会 帮顶 !!!
大家帮忙下吧 不要太看重分数!!![/
b]
代码誊写工 2012-08-30
  • 打赏
  • 举报
回复
你先加上吧
单线程加锁 2012-08-30
  • 打赏
  • 举报
回复
会者不难吧,分不够我可以再加啊。。。
单线程加锁 2012-08-30
  • 打赏
  • 举报
回复
怎么没人用过啊?
PowerBI系列课程之内置视觉对象和常用自定义视觉对象专题 内置视觉对象Stacked bar chart  堆积条形图Stacked column chart 堆积柱形图 - X轴按类别显示Clustered bar chart  簇状条形图Clustered column chart  簇状柱形图100% Stacked bar chart 百分比堆积条形图100% Stacked column chart 百分比堆积柱形图Line Chart  折线图-预测功能Area Chart  面积图Stacked Area Chart  堆积面积图Line and stacked column chart 折线和堆积柱形图-双Y轴Line and clustered column chart 折线和簇状柱形图Ribbon Chart  丝带图Waterfall Chart  瀑布图Funnel  漏斗图Scatter chart  散图Pie Chart  饼图 Donut Chart 环形图TreeMap 树状图Map  地图 Filled Map 着色地图Shape Map 形状地图Gauge 仪表Card 卡片图Multi-row card 多行卡片KPI  Table 表格-条件样式Matrix 矩阵详解  Key influencers  关键影响者Decomposition tree 分解树Q&A 问答2021.6月增加分页表格视觉对象自定义视觉对象视觉对象使用建议下载排名前20,免费实用的视觉对象 AllDemo pbix介绍 Pareto 帕累托图DrillDown Donut  可钻取饼图Word Cloud   文字云Gantt  甘特图Infographic Designer  信息柱状图Timeline Slicer  时间轴切片器Chiclet Slicer 图片切片器Text Filter 文本筛选器HierarchySlicer  层级切片器Pulse Chart脉动图Power KPI Matrix  KPI矩阵Animated Bar Chart Race 动态条形图Advance Card  高级卡片Sankey Chart  桑基图Radar Chart   雷达图Dial Gauge  码表Waffle 华夫占比图Quadrant 象限图 Tornado Chart  龙卷风图Histogram Chart  直方图 Box and Whisker chart 盒线图Sunburst  阳光图Chord Chart 和弦图Bullet Chart  子弹图HTML Content  html解析视觉对象  

4,816

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧