在我的OxyPlot上,我有一个DelegatePlotCommand绑定到PlotController.MouseDown事件:
var commandLeft = new DelegatePlotCommand<OxyMouseDownEventArgs>((v, c, a) =>
{
a.Handled = true;
if (v.ActualModel.Series.Count > 0)
{
var series = v.ActualModel.Series[0] as LineSeries;
var point = series.InverseTransform(a.Position);
if (PltModel.Annotations.Count > 0 && PltModel.Annotations[0] is LineAnnotation)
{
var lineAnnotation = PltModel.Annotations[0] as LineAnnotation;
lineAnnotation.Y = point.Y;
lineAnnotation.Text = point.Y.ToString("G3");
PltModel.InvalidatePlot(true);
guide1Position = point.Y;
GuideDifference = (guide1Position - guide2Position).ToString("G3");
}
}
});
PlotController.BindMouseDown(OxyMouseButton.Left, commandLeft);
当我单击行系列时,事件不会触发。 在生产线系列之外,它工作正常。 有什么建议吗?
答案 0 :(得分:0)
您是否尝试过将委托绑定到LineSeries本身?我不确定PlotController的工作方式,但是LineSeries有自己的MouseDown事件。
答案 1 :(得分:0)
我下载了 OxyPlot.Core版本=“ 2.0.0-unstable1035” targetFramework =“ net452” 和OxyPlot.Wpf version =“ 2.0.0-unstable1035” targetFramework =“ net452”