IUltrachartSurface
Defines the interface to the UltrachartSurface, which contains a single RenderSurfaceBase viewport for rendering multiple IRenderableSeries, X and Y IAxis instances, and where each IRenderableSeries may have a IDataSeries data source. The UltrachartSurface may have zero to many UIElementAnnotationBaseannotations and may have a ChartModifierBase to enable interaction with the chart. Where many ChartModifierBaseChartModifiers are used, you may use a ModifierGroup to group them.
Implements: IUltrachartSurfaceBase, ISuspendable, IInvalidatableElement, IUltrachartController, IDisposable
Properties
public Canvas AdornerLayerCanvas { get; }
value = iUltrachartSurface.AdornerLayerCanvas
Gets the Adorner Layer over the chart
public IAnnotationCanvas AnnotationOverlaySurface { get; }
value = iUltrachartSurface.AnnotationOverlaySurface
Gets the Annotation Canvas over the chart
public AnnotationCollection Annotations { get; }
value = iUltrachartSurface.Annotations
Gets the AnnotationCollection which provides renderable annotations over the UltrachartSurface
public IAnnotationCanvas AnnotationUnderlaySurface { get; }
value = iUltrachartSurface.AnnotationUnderlaySurface
Gets the Annotation Canvas under the chart
public IChartModifier ChartModifier { get; set; }
value = iUltrachartSurface.ChartModifier
iUltrachartSurface.ChartModifier = value
Gets or sets the current ChartModifier, which alters the behaviour of the chart
public IGridLinesPanel GridLinesPanel { get; }
value = iUltrachartSurface.GridLinesPanel
Gets the GridLinesPanel where gridlines are drawn
public ObservableCollection<IRenderableSeries> RenderableSeries { get; }
value = iUltrachartSurface.RenderableSeries
Gets the collection of RenderableSeries that this UltrachartSurface draws.
public IMainGrid RootGrid { get; }
value = iUltrachartSurface.RootGrid
Gets the Root Grid that hosts the Ultrachart RenderSurface, GridLinesPanel, X-Axis and Y-Axes (Left and right)
public ObservableCollection<IRenderableSeries> SelectedRenderableSeries { get; }
value = iUltrachartSurface.SelectedRenderableSeries
Gets the collection of RenderableSeries that are selected.
public ObservableCollection<IChartSeriesViewModel> SeriesSource { get; set; }
value = iUltrachartSurface.SeriesSource
iUltrachartSurface.SeriesSource = value
The SeriesSource property allows data-binding to a collection of IChartSeriesViewModel instances, for pairing of DataSeries with IRenderableSeries
public IViewportManager ViewportManager { get; set; }
value = iUltrachartSurface.ViewportManager
iUltrachartSurface.ViewportManager = value
Gets or sets the current ViewportManager, which alters the behaviour of the viewport (X,Y range) when the chart is rendered
public AxisCollection XAxes { get; }
value = iUltrachartSurface.XAxes
Gets the collection of X-Axis IAxis that this UltrachartSurface measures against
public IAxis XAxis { get; set; }
value = iUltrachartSurface.XAxis
iUltrachartSurface.XAxis = value
Gets or sets the XAxis control on the UltrachartSurface
public AxisCollection YAxes { get; }
value = iUltrachartSurface.YAxes
Gets the collection of Y-Axis IAxis that this UltrachartSurface measures against
public IAxis YAxis { get; set; }
value = iUltrachartSurface.YAxis
iUltrachartSurface.YAxis = value
Gets or sets the primary YAxis control on the UltrachartSurface (default side=Right)
Methods
public void AttachDataSeries(IDataSeries dataSeries)
iUltrachartSurface.AttachDataSeries(dataSeries)
Attaches listeners for DataSeries.DataSeriesChanged
- dataSeries
public void ClearSeries()
iUltrachartSurface.ClearSeries()
Removes all DataSeries from the Ultrachart
public void DetachDataSeries(IDataSeries dataSeries)
iUltrachartSurface.DetachDataSeries(dataSeries)
Detaches listeners for DataSeries.DataSeriesChanged
- dataSeries
public BitmapSource ExportToBitmapSource()
result = iUltrachartSurface.ExportToBitmapSource()
Export snapshot of current UltrachartSurface to BitmapSource
public Rect GetBoundsRelativeTo(IHitTestable relativeTo)
result = iUltrachartSurface.GetBoundsRelativeTo(relativeTo)
Gets the bounds of the current HitTestable element relative to another HitTestable element
- relativeTo
- The relative to.
public IRange GetWindowedYRange(IAxis yAxis, IRange xRange)
result = iUltrachartSurface.GetWindowedYRange(yAxis, xRange)
Equivalent of calling YAxis.GetMaximumRange() however returns the max range only for that axis (by the data-series on it)
- yAxis
- xRange
public bool IsPointWithinBounds(Point point)
result = iUltrachartSurface.IsPointWithinBounds(point)
Returns true if the Point is within the bounds of the current HitTestable element
- point
- The point to test
Returns: true if the Point is within the bounds
public Size OnArrangeUltrachart()
result = iUltrachartSurface.OnArrangeUltrachart()
Preparations for a render pass, called internally, returns the viewport size
public void OnAxisAlignmentChanged(IAxis axis, AxisAlignment oldValue)
iUltrachartSurface.OnAxisAlignmentChanged(axis, oldValue)
Called internally by Ultrachart when AxisAlignment changes. Allows the UltrachartSurface to reposition the axis, e.g. at the top, left, bottom, right
- axis
- oldValue
public void OnIsCenterAxisChanged(IAxis axis)
iUltrachartSurface.OnIsCenterAxisChanged(axis)
Called internally by Ultrachart when IsCenterAxis changes. Allows the UltrachartSurface to place the axis in the center of chart
- axis
public Point TranslatePoint(Point point, IHitTestable relativeTo)
result = iUltrachartSurface.TranslatePoint(point, relativeTo)
Translates the point relative to the other hittestable element
- point
- The point.
- relativeTo
- The relative to.
Events
public event EventHandler AnnotationsCollectionNewCollectionAssigned
iUltrachartSurface.AnnotationsCollectionNewCollectionAssigned += handler
Event raised when Annotations DependencyProperty is changed
public event EventHandler<AxisAlignmentChangedEventArgs> AxisAlignmentChanged
iUltrachartSurface.AxisAlignmentChanged += handler
Event raised when alignment of any axis changed
public event EventHandler XAxesCollectionNewCollectionAssigned
iUltrachartSurface.XAxesCollectionNewCollectionAssigned += handler
Event raised when XAxes DependnecyProperty is changed
public event EventHandler YAxesCollectionNewCollectionAssigned
iUltrachartSurface.YAxesCollectionNewCollectionAssigned += handler
Event raised when YAxes DependnecyProperty is changed