ViewportManagerBase

StockSharp.Xaml.Charting

定义 ViewportManager 的基类,可用于控制可见范围,并用于 UltrachartSurface 上的测距

实现: IViewportManager, IUltrachartController, ISuspendable, IInvalidatableElement

属性

IsAttached
public bool IsAttached { get; private set; }
value = viewportManagerBase.IsAttached
viewportManagerBase.IsAttached = value

获得表示 ViewportManagerBase 是否附着 UltrachartSurface 的值 。

IsSuspended
public bool IsSuspended { get; }
value = viewportManagerBase.IsSuspended

获得一个值,显示当前是否暂停目标更新

Services
public IServiceContainer Services { get; set; }
value = viewportManagerBase.Services
viewportManagerBase.Services = value

获取全Ultrachart中提供服务访问的 ServiceContainer 。 ServiceContainers 是一个每 UltrachartSurface 实例创建的, 并共享到周边组件, 如 AxisBase 、 BaseRenderableSeries 、 ChartModifierBase 实例。 完整的服务列表请参见 ServiceContainer 上的评论 。

方法

AnimateZoomExtents
public void AnimateZoomExtents(TimeSpan duration)
viewportManagerBase.AnimateZoomExtents(duration)

缩小到指定动画持续时间的地平面

duration
缩放到等宽时动画的持续时间
AnimateZoomExtentsX
public void AnimateZoomExtentsX(TimeSpan duration)
viewportManagerBase.AnimateZoomExtentsX(duration)

将图表缩放到 X 方向中的数据范围

duration
AnimateZoomExtentsY
public void AnimateZoomExtentsY(TimeSpan duration)
viewportManagerBase.AnimateZoomExtentsY(duration)

将图表缩放到 Y 方向中的数据范围, 将当前数据计入 X 方向中

duration
AttachUltrachartSurface
public virtual void AttachUltrachartSurface(IUltrachartSurface scs)
viewportManagerBase.AttachUltrachartSurface(scs)

ViewportManagerBase 被连接到父机UltrachartSurface时被调用

scs
The UltrachartSurface instance
CalculateAutoRange
public virtual IRange CalculateAutoRange(IAxis axis)
result = viewportManagerBase.CalculateAutoRange(axis)

被衍生类型所覆盖, 当父 {} UltrachartSurface} 请求自动进行范围排序时调用。 此方法返回的范围将在渲染时应用到图表中

axis

返回值: The new VisibleRange for the YAxis

CalculateNewXAxisRange
public IRange CalculateNewXAxisRange(IAxis xAxis)
result = viewportManagerBase.CalculateNewXAxisRange(xAxis)

由 UltrachartSurface 在渲染过程中调用, 用于计算新的 XAxis VisibleRange 。 覆盖衍生类型的内容, 以返回自定义值

xAxis

返回值: The new IRange VisibleRange for the axis

CalculateNewYAxisRange
public IRange CalculateNewYAxisRange(IAxis yAxis, RenderPassInfo renderPassInfo)
result = viewportManagerBase.CalculateNewYAxisRange(yAxis, renderPassInfo)

由 UltrachartSurface 在渲染过程中调用, 用于计算 YAXis VisibleRange 。 覆盖衍生类型的内容, 以返回自定义值

yAxis
要计算 YA 轴
renderPassInfo
包含渲染数据的当前 RenderPassInfo

返回值: The new IRange VisibleRange for the axis

DecrementSuspend
public void DecrementSuspend()
viewportManagerBase.DecrementSuspend()

每次处置目标悬浮器时, IUpdateSuspender 都会被调用。 当最终目标悬浮器被处理后, ResumeUpdates 被调用 。

DetachUltrachartSurface
public virtual void DetachUltrachartSurface()
viewportManagerBase.DetachUltrachartSurface()

当ViewportManagerBase脱离母体UltrachartSurface时调用

InvalidateElement
public void InvalidateElement()
viewportManagerBase.InvalidateElement()

同步请求元素重画自身和子 。 如果元素是可被ISuspendable 且当前为 IsSuspended(在 SuspendUpdates / ResumeUpdates 呼叫中), 则会忽略 。

InvalidateParentSurface
public void InvalidateParentSurface(RangeMode rangeMode)
viewportManagerBase.InvalidateParentSurface(rangeMode)

用指定的 RangeMode 在母面上重新绘制

rangeMode
RangeMode 指定如何重画父面
OnCalculateNewXRange
protected abstract IRange OnCalculateNewXRange(IAxis xAxis)
result = viewportManagerBase.OnCalculateNewXRange(xAxis)

被衍生类型所覆盖, 当父 {} UltrachartSurface} 请求 XAxis {} VisibleRange}\\ 时调用。 此方法返回的范围将在渲染时应用到图表中

xAxis
轴心国

返回值: The new VisibleRange for the XAxis

OnCalculateNewYRange
protected abstract IRange OnCalculateNewYRange(IAxis yAxis, RenderPassInfo renderPassInfo)
result = viewportManagerBase.OnCalculateNewYRange(yAxis, renderPassInfo)

被衍生类型所覆盖, 当父 {} {UltrachartSurface} 请求 YAXIS {} {VisibleRange}\\ 时使用。 此方法返回的距离将在渲染时应用到图表中

yAxis
亚轴线
renderPassInfo
传票信息。

返回值: The new VisibleRange for the YAxis

OnInvalidateParentSurface
protected void OnInvalidateParentSurface(DependencyPropertyChangedEventArgs e)
viewportManagerBase.OnInvalidateParentSurface(e)

提升InvalidateParentSurface事件.

e
包含事件数据的 DependencyPropertyChangedEventArgs 实例 。
OnParentSurfaceRendered
public virtual void OnParentSurfaceRendered(IUltrachartSurface ultraChartSurface)
viewportManagerBase.OnParentSurfaceRendered(ultraChartSurface)

IUltrachartSurface 被调用时被调用.

ultraChartSurface
The UltrachartSurface instance
OnVisibleRangeChanged
public virtual void OnVisibleRangeChanged(IAxis axis)
viewportManagerBase.OnVisibleRangeChanged(axis)

当 VisibleRange 更改了轴时调用。 覆盖了衍生类型的信息, 以获得此事件的通知

axis
轴心
ResumeUpdates
public void ResumeUpdates(IUpdateSuspender suspender)
viewportManagerBase.ResumeUpdates(suspender)

续集目标更新,计划由IUpdateSuspender调用

suspender
SuspendUpdates
public IUpdateSuspender SuspendUpdates()
result = viewportManagerBase.SuspendUpdates()

悬停绘制目标上的最新消息, 直至返回对象处理完毕, 此时将发出最后的绘图调用

返回值: 可支配更新悬浮器

ZoomExtents
public void ZoomExtents()
viewportManagerBase.ZoomExtents()

将图表缩放到数据的范围, 加上 X 或 Y 的分数集

ZoomExtentsX
public void ZoomExtentsX()
viewportManagerBase.ZoomExtentsX()

将图表缩放到 X 方向中的数据范围

ZoomExtentsY
public void ZoomExtentsY()
viewportManagerBase.ZoomExtentsY()

将图表缩放到 Y 方向中的数据范围, 将当前数据计入 X 方向中