UltrachartSurface
Provides a high performance chart surface with a single RenderSurfaceBase viewport for rendering multiple IRenderableSeries, multiple X and Y IAxis instances, with IDataSeries bindings, mulitple ChartModifierBase derived behaviour modifiers and multiple AnnotationBase UIElement Annotations
实现: IUltrachartSurface, IUltrachartSurfaceBase, ISuspendable, IInvalidatableElement, IUltrachartController, IDisposable, IXmlSerializable
构造函数
UltrachartSurface()
Initializes a new instance of the UltrachartSurface class.
属性
AdornerLayerCanvas : Canvas
Gets the Adorner Layer over the chart
AnimateZoomExtentsCommand : ICommand
Gets or sets the Animate zoom extents command, which when invoked, causes the UltrachartSurface to zoom to extents using animation
AnnotationOverlaySurface : IAnnotationCanvas
Gets the Annotation Canvas over the chart
Annotations : AnnotationCollection
Gets the AnnotationCollection which provides renderable annotations over the UltrachartSurface
AnnotationUnderlaySurface : IAnnotationCanvas
Gets the Annotation Canvas under the chart
AutoRangeOnStartup : bool
Gets or sets a value indicating whether Ultrachart will attempt to perform a one-time AutoRange on startup
AxisAreaBottom : AxisArea
Gets the Bottom AxisArea, which contains the Axes which have AxisAlignment set to Bottom
AxisAreaLeft : AxisArea
Gets the Left AxisArea, which contains the Axes which have AxisAlignment set to Left
AxisAreaRight : AxisArea
Gets the Right AxisArea, which contains the Axes which have AxisAlignment set to Right
AxisAreaTop : AxisArea
Gets the Top AxisArea, which contains the Axes which have AxisAlignment set to Top
BottomAxesPanelTemplate : ItemsPanelTemplate
Gets or sets the template that defines the panel which controls the layout of bottom-aligned axes
CenterXAxisArea : AxisArea
Gets the center AxisArea which contains XAxes with IsCenterAxis flag equals to true
CenterYAxisArea : AxisArea
Gets the center AxisArea which contains YAxes with IsCenterAxis flag equals to true
ChartModifier : IChartModifier
Gets or sets the current ChartModifier, which alters the behaviour of the chart
ClipOverlayAnnotations : bool
Gets or sets whether annotations over the chart should clip to bounds or not. Default value is True
ClipUnderlayAnnotations : bool
Gets or sets whether annotations under the chart should clip to bounds or not. Default value is true
GridLinesPanel : IGridLinesPanel
Gets the GridLinesPanel where gridlines are drawn
GridLinesPanelStyle : Style
Gets or sets the GridLinesPanel style.
IsPolarChart : bool
Gets whether this UltrachartSurface is a polar chart or not
LeftAxesPanelTemplate : ItemsPanelTemplate
Gets or sets the template that defines the panel which controls the layout of left-aligned axes
RenderableSeries : ObservableCollection<IRenderableSeries>
Gets the collection of RenderableSeries that this UltrachartSurface draws.
RenderSurfaceStyle : Style
Gets or sets the RenderSurface style.
RightAxesPanelTemplate : ItemsPanelTemplate
Gets or sets the template that defines the panel which controls the layout of right-aligned axes
SelectedRenderableSeries : ObservableCollection<IRenderableSeries>
Gets the collection of RenderableSeries that are selected.
SeriesSource : ObservableCollection<IChartSeriesViewModel>
The SeriesSource property allows data-binding to a collection of IChartSeriesViewModel instances, for pairing of DataSeries with IRenderableSeries
StackedColumnsWrapper : IStackedColumnsWrapper
Gets StackedColumnsWrapper that allows user to customize drawing of StackedColumnRenderableSeries
StackedMountainsWrapper : IStackedMountainsWrapper
Gets StackedMountainsWrapper that allows user to customize drawing of StackedMountainRenderableSeries
TopAxesPanelTemplate : ItemsPanelTemplate
Gets or sets the template that defines the panel which controls the layout of top-aligned axes
VersionAndLicenseInfo : string
Returns version and license info as a formatted string
ViewportManager : IViewportManager
Gets or sets the ViewportManager instance on the chart, which handles behavior of the viewport on render
XAxes : AxisCollection
Gets the collection of X-Axis IAxis that this UltrachartSurface measures against
YAxes : AxisCollection
Gets the collection of Y-Axis IAxis that this UltrachartSurface measures against
ZoomExtentsCommand : ICommand
Gets or sets the zoom extents command, which when invoked, causes the UltrachartSurface to zoom to extents
方法
AnimateZoomExtents(TimeSpan)
Zooms to extents with the specified animation duration
- duration
- The duration of animation when zooming to extents
AnimateZoomExtentsX(TimeSpan)
Zooms the chart to the extents of the data in the X-Direction, using animation with the specified duration
- duration
- The duration of the animation
AnimateZoomExtentsY(TimeSpan)
Zooms the chart to the extents of the data in the Y-Direction, accounting for the current data in view in the X-direction
- duration
ClearSeries()
Removes all DataSeries from the Ultrachart
DecrementSuspend()
Called by IUpdateSuspender each time a target suspender is disposed. When the final target suspender has been disposed, ResumeUpdates is called
ExportToBitmapSource() : BitmapSource
Export snapshot of current UltrachartSurface to BitmapSource
ExportToFile(string, ExportType)
Saves snapshot of current UltrachartSurface to file
- fileName
- exportType
- Defines format of file to export
GetBoundsRelativeTo(IHitTestable) : Rect
Gets the bounds of the current HitTestable element relative to another HitTestable element
- relativeTo
- The relative to.
GetSchema() : XmlSchema
Returns an XmlSchema that describes the XML representation of the object that is produced by the WriteXml method and consumed by the ReadXml method
GetWindowedYRange(IAxis, IRange) : IRange
Equivalent of calling YAxis.GetMaximumRange() however returns the max range only for that axis (by the data-series on it) "windowed" = "displayed in current viewport" uses GrowBy()
- yAxis
- xRange
IsPointWithinBounds(Point) : bool
Returns true if the Point is within the bounds of the current HitTestable element
- point
- The point to test
返回值: true if the Point is within the bounds
MeasureOverride(Size) : Size
Called to remeasure a control.
- constraint
- The maximum size that the method can return.
返回值: The size of the control, up to the maximum specified by .
OnApplyTemplate()
When overridden in a derived class, is invoked whenever application code or internal processes (such as a rebuilding layout pass) call ApplyTemplate. In simplest terms, this means the method is called just before a UI element displays in an application. For more information, see Remarks.
OnArrangeUltrachart() : Size
Preparations for a render pass, called internally, returns the viewport size
返回值: The required Viewport Size
OnAxisAlignmentChanged(IAxis, AxisAlignment)
Called internally by Ultrachart when AxisAlignment changes. Allows the UltrachartSurface to reposition the axis, args.g. at the top, left, bottom, right
- axis
- oldValue
OnDataContextChanged(DependencyPropertyChangedEventArgs)
Called when the UltrachartSurfaceBase DataContext changes.
- e
- The DependencyPropertyChangedEventArgs instance containing the event data.
OnIsCenterAxisChanged(IAxis)
Called internally by Ultrachart when IsCenterAxis changes. Allows the UltrachartSurface to place the axis in the center of chart
- axis
OnUltrachartRendered()
Raises the Rendered event, fired at the end of a render pass immediately before presentation to the screen
OnUltrachartSurfaceLoaded()
Called when the UltrachartSurfaceBase is loaded. Perform initialization operations here.
OnUltrachartSurfaceSizeChanged()
Called when the UltrachartSurfaceBase Size changes. Perform render surface resize or redraw operations here
OnUltrachartSurfaceUnloaded()
Called when the UltrachartSurfaceBase is Unloaded and removed from the visual tree. Perform cleanup operations here
RegisterServices(IServiceContainer)
Called in the constructor of UltrachartSurfaceBase, gives derived classes the opportunity to register services per UltrachartSurfaceBase instance
返回值: The populated IServiceContainer. Must not return null. Return at least an empty ServiceContainer
ResumeUpdates(IUpdateSuspender)
Resumes updates on the target, intended to be called by IUpdateSuspender
SuspendUpdates() : IUpdateSuspender
Suspends drawing updates on the target until the returned object is disposed, when a final draw call will be issued
返回值: The disposable Update Suspender
TranslatePoint(Point, IHitTestable) : Point
Translates the point relative to the other hittestable element
- point
- The point.
- relativeTo
- The relative to.
ZoomExtents()
Zooms the chart to the extents of the data, plus any X or Y Grow By fraction set on the X and Y Axes
ZoomExtentsX()
Zooms the chart to the extents of the data in the X-Direction
ZoomExtentsY()
Zooms the chart to the extents of the data in the Y-Direction, accounting for the current data in view in the X-direction
事件
AnnotationsCollectionNewCollectionAssigned : EventHandler
Event raised when Annotations DependencyProperty is changed
AxisAlignmentChanged : EventHandler<AxisAlignmentChangedEventArgs>
Event raised when alignment of any axis changed
XAxesCollectionNewCollectionAssigned : EventHandler
Event raised when XAxes DependnecyProperty is changed
YAxesCollectionNewCollectionAssigned : EventHandler
Event raised when YAxes DependnecyProperty is changed
字段
AnimateZoomExtentsCommandProperty : DependencyProperty
Defines the ZoomExtentsCommand DependencyProperty
AnnotationsProperty : DependencyProperty
Defines the Annotations DependencyProperty
AutoRangeOnStartupProperty : DependencyProperty
Defines the AutoRangeOnStartup DependencyProperty
BottomAxesPanelTemplateProperty : DependencyProperty
Defines the RightAxisPanelTemplate DependencyProperty
ChartModifierProperty : DependencyProperty
Defines the ChartModifier DependencyProperty
ClipOverlayAnnotationsProperty : DependencyProperty
Defines the ClipOverlayAnnotations DepedencyProperty
ClipUnderlayAnnotationsProperty : DependencyProperty
Defines the ClipUnderlayAnnotations DependencyProperty
GridLinesPanelStyleProperty : DependencyProperty
Defines the GridLinesPanelStyle DependencyProperty
IsPolarChartProperty : DependencyProperty
Defines the IsPolarChart DependencyProperty
LeftAxesPanelTemplateProperty : DependencyProperty
Defines the LeftAxisPanelTemplate DependencyProperty
RenderableSeriesProperty : DependencyProperty
Defines the RenderableSeries DependencyProperty
RenderSurfaceStyleProperty : DependencyProperty
Defines the RenderSurfaceStyle DependencyProperty
RightAxesPanelTemplateProperty : DependencyProperty
Defines the RightAxisPanelTemplate DependencyProperty
SelectedRenderableSeriesProperty : DependencyProperty
Defines the SelectedRenderableSeries DependencyProperty
SeriesSourceProperty : DependencyProperty
Defines the SeriesSource DependencyProperty
TopAxesPanelTemplateProperty : DependencyProperty
Defines the RightAxisPanelTemplate DependencyProperty
ViewportManagerProperty : DependencyProperty
Defines the ViewportManager DependencyProperty
XAxesProperty : DependencyProperty
Defines the YAxes DependencyProperty
XAxisProperty : DependencyProperty
Defines the XAxis DependencyProperty
YAxesProperty : DependencyProperty
Defines the YAxes DependencyProperty
YAxisProperty : DependencyProperty
Defines the YAxis DependencyProperty
ZoomExtentsCommandProperty : DependencyProperty
Defines the ZoomExtentsCommand DependencyProperty