OxyPlot MouseEvents如何访问PlotModel

时间:2016-06-07 15:09:56

标签: c# wpf mouseevent oxyplot

鼠标事件返回PlotController而不是plotView或plotModel。

我的问题是如何从鼠标事件中访问plotModel?有人能告诉我这个改变背后的想法,从提供plotmodel作为源码到现在提供plotcontroller?如何根据将此plotcontroller作为源的鼠标事件选择所有系列或放大?

我想添加一个由鼠标事件触发的注释。

var plott = new PlotModel();
plott.MouseDown += Plott_MouseDown;

public void Plott_MouseDown(object sender, OxyMouseDownEventArgs e)
    {
        var plot = sender as PlotController;

        I NEED TO ACCESS THE PLOTMODEL TO ADD AN ANNOTATION

        plot.Annotations.Add(new RectangleAnnotation(){ MinimumX = e.Position.X, MinimumY = e.Position.Y });
    }

1 个答案:

答案 0 :(得分:0)

xaml

中为您的地图命名
<oxy:PlotView x:Name="MyPlotView" .../>

从后面的代码访问它:

public void Plott_MouseDown(object sender, OxyMouseDownEventArgs e)
{
    MyPlotView.Model.Annotations.Add(new RectangleAnnotation(){ MinimumX = e.Position.X, MinimumY = e.Position.Y });
}