Product Bundles
DevCraft
All Telerik .NET and Kendo UI JavaScript components and AI Tools in one package.
Kendo UI
Bundle of AI Tools plus four JavaScript UI libraries built natively for jQuery, Angular, React and Vue.
Build JavaScript UI
Javascript
Telerik
Build modern .NET business apps
.Net Web
Cross-Platform
Desktop
Reporting and Documents
AI for Developers & IT
Ensure AI program success
AI Coding
AI Engineering
Additional Tools
Enhance the developer and designer experience
Testing & Mocking
Debugging
AI-Enhanced UI Tools
CMS
Free Tools
Support and Learning
Productivity and Design Tools
Hello
I want to draw a chart (Cartesian, line series) with mouse click but i don't know how can I get location of mouse click in chart axes,
Also how to allow for add new point only in horizontal and vertical stripes lines intersect
Thanks
public
RadForm1()
{
InitializeComponent();
radChartView1.MouseDown += RadChartView1_MouseDown;
ScatterSeries scatterSeries =
new
ScatterSeries();
scatterSeries.Name =
""
;
scatterSeries.DataPoints.Add(
ScatterDataPoint(0, 0));
ScatterDataPoint(200,200));
scatterSeries.BackColor = Color.Transparent;
this
.radChartView1.Series.Add(scatterSeries);
}
private
void
RadChartView1_MouseDown(
object
sender, MouseEventArgs e)
hValue =
.GetVerticalAxisValueFromMouse(e);
vValue =
.GetHorizontalAxisValueFromMouse(e);
Console.WriteLine(hValue);
Console.WriteLine(vValue);
Console.WriteLine();
GetVerticalAxisValueFromMouse(MouseEventArgs e)
LinearAxis axis = radChartView1.Axes[1]
as
LinearAxis;
double
delta = axis.ActualRange.Maximum - axis.ActualRange.Minimum;
totalHeight = axis.Model.LayoutSlot.Height;
ratio = 1 - (e.Location.Y -
.radChartView1.Area.View.Viewport.Y - axis.Model.LayoutSlot.Y) / totalHeight;
value = axis.ActualRange.Minimum + delta * ratio;
return
value;
GetHorizontalAxisValueFromMouse(MouseEventArgs e)
LinearAxis axis = radChartView1.Axes[0]
totalWidth = axis.Model.LayoutSlot.Width;
ratio = (e.Location.X -
.radChartView1.Area.View.Viewport.X - axis.Model.LayoutSlot.X) / totalWidth;