//设置图表轴箭头形状
chart1.ChartAreas[0].AxisX.ArrowStyle = AxisArrowStyle.Triangle;
chart1.ChartAreas[0].AxisY.ArrowStyle = AxisArrowStyle.Triangle;
//点击点提示线
chart1.ChartAreas[0].CursorX.IsUserEnabled = true;
//用户缩放
chart1.ChartAreas[0].CursorX.IsUserSelectionEnabled = true;
chart1.ChartAreas[0].CursorY.IsUserSelectionEnabled = true;
//X轴设置
chart1.ChartAreas[0].AxisX.Maximum = 110;
chart1.ChartAreas[0].AxisX.Minimum = -10;
chart1.ChartAreas[0].AxisX.Interval = 10;
//缩放后撤回
chart1.ChartAreas[0].AxisX.ScaleView.ZoomReset(0);//括号+0直接撤回到最原始状态,不+0即为撤回上一次操作
chart1.ChartAreas[0].AxisY.ScaleView.ZoomReset(0);
//通过chart图表的mouse_up事件,获得信息提示,需要在界面上放个tooltip
private void chart1_MouseUp(object sender, MouseEventArgs e)
{
double select_x= chart1.ChartAreas[0].CursorX.Position;
StringBuilder builder = new StringBuilder();
builder.AppendLine("选择的X值是");
builder.AppendLine("X: "+select_x.ToString());
chart1.ShowTooltip(toolTip1, builder.ToString(), 4, 3, 10000);
}
需要添加拓展类
public static class CToolTip
{
/// <summary>
/// 为控件提供Tooltip
/// </summary>
/// <param name="control">控件</param>
/// <param name="tip">ToolTip</param>
/// <param name="message">提示消息</param>
public static void ShowTooltip(this Control control, ToolTip tip, string message)
{
Point _mousePoint = Control.MousePosition;
int _x = control.PointToClient(_mousePoint).X;
int _y = control.PointToClient(_mousePoint).Y;
tip.Show(message, control, _x, _y);
tip.Active = true;
}
/// <summary>
/// 为控件提供Tooltip
/// </summary>
/// <param name="control">控件</param>
/// <param name="tip">ToolTip</param>
/// <param name="message">提示消息</param>
/// <param name="durationTime">保持提示的持续时间</param>
public static void ShowTooltip(this Control control, ToolTip tip, string message, int durationTime)
{
Point _mousePoint = Control.MousePosition;
int _x = control.PointToClient(_mousePoint).X;
int _y = control.PointToClient(_mousePoint).Y;
tip.Show(message, control, _x, _y, durationTime);
tip.Active = true;
}
/// <summary>
/// 为控件提供Tooltip
/// </summary>
/// <param name="control">控件</param>
/// <param name="tip">ToolTip</param>
/// <param name="message">提示消息</param>
/// <param name="xoffset">水平偏移量</param>
/// <param name="yoffset">垂直偏移量</param>
public static void ShowTooltip(this Control control, ToolTip tip, string message, int xoffset, int yoffset)
{
Point _mousePoint = Control.MousePosition;
int _x = control.PointToClient(_mousePoint).X;
int _y = control.PointToClient(_mousePoint).Y;
tip.Show(message, control, _x + xoffset, _y + yoffset);
tip.Active = true;
}
/// <summary>
/// 为控件提供Tooltip
/// </summary>
/// <param name="control">控件</param>
/// <param name="tip">ToolTip</param>
/// <param name="message">提示消息</param>
/// <param name="xoffset">水平偏移量</param>
/// <param name="yoffset">垂直偏移量</param>
/// <param name="durationTime">保持提示的持续时间</param>
public static void ShowTooltip(this Control control, ToolTip tip, string message, int xoffset, int yoffset, int durationTime)
{
Point _mousePoint = Control.MousePosition;
int _x = control.PointToClient(_mousePoint).X;
int _y = control.PointToClient(_mousePoint).Y;
tip.Show(message, control, _x + xoffset, _y + yoffset, durationTime);
tip.Active = true;
}
}