【问题标题】:Disable Oxyplot Mouse Scrolling (Zooming)禁用 Oxyplot 鼠标滚动(缩放)
【发布时间】:2021-12-28 13:56:43
【问题描述】:

我看到有几篇较早的帖子引用 axis.IsZoomEnabled = false 作为禁用 Ozyplot 缩放的方法,但这似乎不起作用。

我也尝试过创建 PlotController 并取消绑定鼠标滚轮,但这也不起作用。 CustomControl.UnbindMouseWheel();Controller="{Binding CustomControl}" 在 xaml 中。

如何禁用 Oxyplot 上的鼠标滚轮和缩放功能?

【问题讨论】:

  • 您还可以通过旋转鼠标滚轮进行缩放吗?我问是因为如果您只是取消绑定鼠标滚轮,则可以按下鼠标滚轮并通过选择进行缩放(如果您问我,这有点令人困惑)。我假设您也希望禁用它?你能发布你的 XAML 吗?
  • @JimFoye,是的,鼠标仍然具有所有功能。我只想禁用整个鼠标。我将使用滚动条左右平移。这是我的xaml; (我留下了标题)<Grid> <oxy:PlotView Controller="{Binding customController}" x:Name="plot" Model="{Binding PlotModel}" /> </Grid>
  • 我建议你做我所做的:调用controller.UnbindAll(),然后,如果需要,恢复你想要的东西的绑定。我打电话给 controller.BindMouseDown (OxyMouseButton.Left, PlotCommands.Track) 因为我想启用跟踪。我真的认为这些绑定应该是选择加入而不是选择退出。

标签: oxyplot


【解决方案1】:

在 Oxyplot 中制作 HeatMap 时,我也在为此苦苦挣扎。使用这些示例,cmets 表明 X 和 Y 轴是自动生成的。所以很自然地,我尝试将 HeatMapPlotModel.DefaultXAxis.IsPanEnabled 设置为 false,但它似乎没有做任何事情。

但是当我添加自己的轴(而不是使用自动轴)时,使用这些属性(IsPanEnabled & IsZoomEnabled = false)成功禁用了平移和缩放。

工作:

HeatMapPlotModel.Axes.Add(new LinearAxis() { IsPanEnabled = false, IsZoomEnabled = false });  
HeatMapPlotModel.Axes.Add(new LinearAxis() { IsPanEnabled = false, IsZoomEnabled = false, Position = AxisPosition.Bottom });

没用:

HeatMapPlotModel.DefaultXAxis.IsPanEnabled = false;
HeatMapPlotModel.DefaultYAxis.IsPanEnabled = false;
HeatMapPlotModel.DefaultXAxis.IsZoomEnabled = false;
HeatMapPlotModel.DefaultYAxis.IsZoomEnabled = false;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-28
    相关资源
    最近更新 更多