Table of Contents

Class LiveScopeControl

Namespace
LiveScope.Avalonia
Assembly
LiveScope.Avalonia.dll

LiveScope control for Avalonia

[Obfuscation(Exclude = true, ApplyToMembers = false)]
public class LiveScopeControl : UserControl, INotifyPropertyChanged, IDataContextProvider, ILogical, IThemeVariantHost, IResourceHost, IResourceNode, IStyleHost, ISetLogicalParent, ISetInheritanceParent, ISupportInitialize, IStyleable, INamed, IInputElement, IDataTemplateHost, ISetterValue, ILiveScopeControl, ILiveScopeModel
Inheritance
AvaloniaObject
Animatable
StyledElement
Visual
Layoutable
Interactive
InputElement
Control
TemplatedControl
ContentControl
UserControl
LiveScopeControl
Implements
IDataContextProvider
ILogical
IThemeVariantHost
IResourceHost
IResourceNode
IStyleHost
ISetLogicalParent
ISetInheritanceParent
IStyleable
INamed
IInputElement
IDataTemplateHost
ISetterValue
Inherited Members
ContentControl.ContentProperty
ContentControl.ContentTemplateProperty
ContentControl.HorizontalContentAlignmentProperty
ContentControl.VerticalContentAlignmentProperty
ContentControl.OnPropertyChanged(AvaloniaPropertyChangedEventArgs)
ContentControl.RegisterContentPresenter(ContentPresenter)
ContentControl.Content
ContentControl.ContentTemplate
ContentControl.Presenter
ContentControl.HorizontalContentAlignment
ContentControl.VerticalContentAlignment
TemplatedControl.BackgroundProperty
TemplatedControl.BackgroundSizingProperty
TemplatedControl.BorderBrushProperty
TemplatedControl.BorderThicknessProperty
TemplatedControl.CornerRadiusProperty
TemplatedControl.FontFamilyProperty
TemplatedControl.FontFeaturesProperty
TemplatedControl.FontSizeProperty
TemplatedControl.FontStyleProperty
TemplatedControl.FontWeightProperty
TemplatedControl.FontStretchProperty
TemplatedControl.ForegroundProperty
TemplatedControl.PaddingProperty
TemplatedControl.TemplateProperty
TemplatedControl.IsTemplateFocusTargetProperty
TemplatedControl.TemplateAppliedEvent
TemplatedControl.GetIsTemplateFocusTarget(Control)
TemplatedControl.ApplyTemplate()
TemplatedControl.GetTemplateFocusTarget()
TemplatedControl.OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs)
TemplatedControl.OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs)
TemplatedControl.OnApplyTemplate(TemplateAppliedEventArgs)
TemplatedControl.OnTemplateChanged(AvaloniaPropertyChangedEventArgs)
TemplatedControl.Background
TemplatedControl.BackgroundSizing
TemplatedControl.BorderBrush
TemplatedControl.BorderThickness
TemplatedControl.CornerRadius
TemplatedControl.FontFamily
TemplatedControl.FontFeatures
TemplatedControl.FontSize
TemplatedControl.FontStyle
TemplatedControl.FontWeight
TemplatedControl.FontStretch
TemplatedControl.Foreground
TemplatedControl.Padding
TemplatedControl.Template
TemplatedControl.TemplateApplied
Control.FocusAdornerProperty
Control.TagProperty
Control.ContextMenuProperty
Control.ContextFlyoutProperty
Control.RequestBringIntoViewEvent
Control.ContextRequestedEvent
Control.LoadedEvent
Control.UnloadedEvent
Control.SizeChangedEvent
Control.OnLoaded(RoutedEventArgs)
Control.OnUnloaded(RoutedEventArgs)
Control.OnSizeChanged(SizeChangedEventArgs)
Control.OnAttachedToVisualTreeCore(VisualTreeAttachmentEventArgs)
Control.OnDetachedFromVisualTreeCore(VisualTreeAttachmentEventArgs)
Control.OnGotFocus(GotFocusEventArgs)
Control.OnLostFocus(RoutedEventArgs)
Control.OnCreateAutomationPeer()
Control.OnPointerReleased(PointerReleasedEventArgs)
Control.OnKeyUp(KeyEventArgs)
Control.FocusAdorner
Control.DataTemplates
Control.ContextMenu
Control.ContextFlyout
Control.IsLoaded
Control.Tag
Control.ContextRequested
Control.Loaded
Control.Unloaded
Control.SizeChanged
InputElement.FocusableProperty
InputElement.IsEnabledProperty
InputElement.IsEffectivelyEnabledProperty
InputElement.CursorProperty
InputElement.IsKeyboardFocusWithinProperty
InputElement.IsFocusedProperty
InputElement.IsHitTestVisibleProperty
InputElement.IsPointerOverProperty
InputElement.IsTabStopProperty
InputElement.GotFocusEvent
InputElement.LostFocusEvent
InputElement.KeyDownEvent
InputElement.KeyUpEvent
InputElement.TabIndexProperty
InputElement.TextInputEvent
InputElement.TextInputMethodClientRequestedEvent
InputElement.PointerEnteredEvent
InputElement.PointerExitedEvent
InputElement.PointerMovedEvent
InputElement.PointerPressedEvent
InputElement.PointerReleasedEvent
InputElement.PointerCaptureLostEvent
InputElement.PointerWheelChangedEvent
InputElement.TappedEvent
InputElement.HoldingEvent
InputElement.DoubleTappedEvent
InputElement.Focus(NavigationMethod, KeyModifiers)
InputElement.OnKeyDown(KeyEventArgs)
InputElement.OnTextInput(TextInputEventArgs)
InputElement.OnPointerEntered(PointerEventArgs)
InputElement.OnPointerExited(PointerEventArgs)
InputElement.OnPointerMoved(PointerEventArgs)
InputElement.OnPointerPressed(PointerPressedEventArgs)
InputElement.OnPointerCaptureLost(PointerCaptureLostEventArgs)
InputElement.OnPointerWheelChanged(PointerWheelEventArgs)
InputElement.UpdateIsEffectivelyEnabled()
InputElement.Focusable
InputElement.IsEnabled
InputElement.Cursor
InputElement.IsKeyboardFocusWithin
InputElement.IsFocused
InputElement.IsHitTestVisible
InputElement.IsPointerOver
InputElement.IsTabStop
InputElement.IsEffectivelyEnabled
InputElement.TabIndex
InputElement.KeyBindings
InputElement.IsEnabledCore
InputElement.GestureRecognizers
InputElement.GotFocus
InputElement.LostFocus
InputElement.KeyDown
InputElement.KeyUp
InputElement.TextInput
InputElement.TextInputMethodClientRequested
InputElement.PointerEntered
InputElement.PointerExited
InputElement.PointerMoved
InputElement.PointerPressed
InputElement.PointerReleased
InputElement.PointerCaptureLost
InputElement.PointerWheelChanged
InputElement.Tapped
InputElement.Holding
InputElement.DoubleTapped
Interactive.RaiseEvent(RoutedEventArgs)
Interactive.BuildEventRoute(RoutedEvent)
Layoutable.DesiredSizeProperty
Layoutable.WidthProperty
Layoutable.HeightProperty
Layoutable.MinWidthProperty
Layoutable.MaxWidthProperty
Layoutable.MinHeightProperty
Layoutable.MaxHeightProperty
Layoutable.MarginProperty
Layoutable.HorizontalAlignmentProperty
Layoutable.VerticalAlignmentProperty
Layoutable.UseLayoutRoundingProperty
Layoutable.UpdateLayout()
Layoutable.Measure(Size)
Layoutable.Arrange(Rect)
Layoutable.InvalidateMeasure()
Layoutable.InvalidateArrange()
Layoutable.AffectsMeasure<T>(params AvaloniaProperty[])
Layoutable.AffectsArrange<T>(params AvaloniaProperty[])
Layoutable.MeasureCore(Size)
Layoutable.MeasureOverride(Size)
Layoutable.ArrangeCore(Rect)
Layoutable.ArrangeOverride(Size)
Layoutable.OnMeasureInvalidated()
Layoutable.OnVisualParentChanged(Visual, Visual)
Layoutable.Width
Layoutable.Height
Layoutable.MinWidth
Layoutable.MaxWidth
Layoutable.MinHeight
Layoutable.MaxHeight
Layoutable.Margin
Layoutable.HorizontalAlignment
Layoutable.VerticalAlignment
Layoutable.DesiredSize
Layoutable.IsMeasureValid
Layoutable.IsArrangeValid
Layoutable.UseLayoutRounding
Layoutable.EffectiveViewportChanged
Layoutable.LayoutUpdated
Visual.BoundsProperty
Visual.ClipToBoundsProperty
Visual.ClipProperty
Visual.IsVisibleProperty
Visual.OpacityProperty
Visual.OpacityMaskProperty
Visual.EffectProperty
Visual.HasMirrorTransformProperty
Visual.RenderTransformProperty
Visual.RenderTransformOriginProperty
Visual.FlowDirectionProperty
Visual.VisualParentProperty
Visual.ZIndexProperty
Visual.GetFlowDirection(Visual)
Visual.SetFlowDirection(Visual, FlowDirection)
Visual.InvalidateVisual()
Visual.Render(DrawingContext)
Visual.AffectsRender<T>(params AvaloniaProperty[])
Visual.OnAttachedToVisualTree(VisualTreeAttachmentEventArgs)
Visual.InvalidateMirrorTransform()
Visual.Bounds
Visual.ClipToBounds
Visual.Clip
Visual.IsEffectivelyVisible
Visual.IsVisible
Visual.Opacity
Visual.OpacityMask
Visual.Effect
Visual.HasMirrorTransform
Visual.RenderTransform
Visual.RenderTransformOrigin
Visual.FlowDirection
Visual.ZIndex
Visual.VisualChildren
Visual.VisualRoot
Visual.BypassFlowDirectionPolicies
Visual.AttachedToVisualTree
Visual.DetachedFromVisualTree
StyledElement.DataContextProperty
StyledElement.NameProperty
StyledElement.ParentProperty
StyledElement.TemplatedParentProperty
StyledElement.ThemeProperty
StyledElement.BeginInit()
StyledElement.EndInit()
StyledElement.ApplyStyling()
StyledElement.InitializeIfNeeded()
StyledElement.OnDataContextBeginUpdate()
StyledElement.OnDataContextEndUpdate()
StyledElement.OnInitialized()
StyledElement.Name
StyledElement.Classes
StyledElement.DataContext
StyledElement.IsInitialized
StyledElement.Styles
StyledElement.StyleKey
StyledElement.Resources
StyledElement.TemplatedParent
StyledElement.Theme
StyledElement.LogicalChildren
StyledElement.PseudoClasses
StyledElement.StyleKeyOverride
StyledElement.Parent
StyledElement.ActualThemeVariant
StyledElement.AttachedToLogicalTree
StyledElement.DetachedFromLogicalTree
StyledElement.DataContextChanged
StyledElement.Initialized
StyledElement.ResourcesChanged
StyledElement.ActualThemeVariantChanged
Animatable.TransitionsProperty
Animatable.OnPropertyChangedCore(AvaloniaPropertyChangedEventArgs)
Animatable.Transitions
AvaloniaObject.CheckAccess()
AvaloniaObject.VerifyAccess()
AvaloniaObject.ClearValue(AvaloniaProperty)
AvaloniaObject.ClearValue<T>(AvaloniaProperty<T>)
AvaloniaObject.ClearValue<T>(StyledProperty<T>)
AvaloniaObject.ClearValue<T>(DirectPropertyBase<T>)
AvaloniaObject.GetHashCode()
AvaloniaObject.GetValue(AvaloniaProperty)
AvaloniaObject.GetValue<T>(StyledProperty<T>)
AvaloniaObject.GetValue<T>(DirectPropertyBase<T>)
AvaloniaObject.GetBaseValue<T>(StyledProperty<T>)
AvaloniaObject.IsAnimating(AvaloniaProperty)
AvaloniaObject.IsSet(AvaloniaProperty)
AvaloniaObject.SetValue<T>(StyledProperty<T>, T, BindingPriority)
AvaloniaObject.SetValue<T>(DirectPropertyBase<T>, T)
AvaloniaObject.SetCurrentValue<T>(StyledProperty<T>, T)
AvaloniaObject.Bind(AvaloniaProperty, IBinding)
AvaloniaObject.CoerceValue(AvaloniaProperty)
AvaloniaObject.RaisePropertyChanged<T>(DirectPropertyBase<T>, T, T)
AvaloniaObject.SetAndRaise<T>(DirectPropertyBase<T>, ref T, T)
AvaloniaObject.InheritanceParent
AvaloniaObject.this[AvaloniaProperty]
AvaloniaObject.this[IndexerDescriptor]
AvaloniaObject.PropertyChanged

Constructors

LiveScopeControl()

Create a new charting control

public LiveScopeControl()

Fields

ActiveSeriesIdProperty

public static readonly StyledProperty<uint> ActiveSeriesIdProperty

Field Value

StyledProperty<uint>

ActiveSeriesIndexProperty

public static readonly StyledProperty<int> ActiveSeriesIndexProperty

Field Value

StyledProperty<int>

BackgroundColorProperty

public static readonly StyledProperty<ISolidColorBrush> BackgroundColorProperty

Field Value

StyledProperty<ISolidColorBrush>

CursorColorProperty

public static readonly StyledProperty<ISolidColorBrush> CursorColorProperty

Field Value

StyledProperty<ISolidColorBrush>

CursorValueProperty

public static readonly StyledProperty<double> CursorValueProperty

Field Value

StyledProperty<double>

DefaultSeriesColorProperty

public static readonly StyledProperty<ISolidColorBrush> DefaultSeriesColorProperty

Field Value

StyledProperty<ISolidColorBrush>

EnableCursorLockProperty

public static readonly StyledProperty<bool> EnableCursorLockProperty

Field Value

StyledProperty<bool>

GridColorProperty

public static readonly StyledProperty<ISolidColorBrush> GridColorProperty

Field Value

StyledProperty<ISolidColorBrush>

MaxCursorValueProperty

public static readonly StyledProperty<double> MaxCursorValueProperty

Field Value

StyledProperty<double>

SeriesContentProperty

public static readonly StyledProperty<SeriesCollection> SeriesContentProperty

Field Value

StyledProperty<SeriesCollection>

SeriesLayoutProperty

public static readonly StyledProperty<SeriesLayoutTypes> SeriesLayoutProperty

Field Value

StyledProperty<SeriesLayoutTypes>

SeriesProperty

public static readonly StyledProperty<ReadOnlyCollection<Series>> SeriesProperty

Field Value

StyledProperty<ReadOnlyCollection<Series>>

TextColorProperty

public static readonly StyledProperty<ISolidColorBrush> TextColorProperty

Field Value

StyledProperty<ISolidColorBrush>

TimeLengthProperty

public static readonly StyledProperty<double> TimeLengthProperty

Field Value

StyledProperty<double>

UpdateDataProperty

public static readonly StyledProperty<DataUpdateTypes> UpdateDataProperty

Field Value

StyledProperty<DataUpdateTypes>

XAxisColorProperty

public static readonly StyledProperty<ISolidColorBrush> XAxisColorProperty

Field Value

StyledProperty<ISolidColorBrush>

XMaxProperty

public static readonly StyledProperty<double> XMaxProperty

Field Value

StyledProperty<double>

XMinProperty

public static readonly StyledProperty<double> XMinProperty

Field Value

StyledProperty<double>

YAxisColorProperty

public static readonly StyledProperty<ISolidColorBrush> YAxisColorProperty

Field Value

StyledProperty<ISolidColorBrush>

YMaxProperty

public static readonly StyledProperty<double> YMaxProperty

Field Value

StyledProperty<double>

YMinProperty

public static readonly StyledProperty<double> YMinProperty

Field Value

StyledProperty<double>

Properties

ActiveSeriesId

Unique identifier of the currently active series

public uint ActiveSeriesId { get; set; }

Property Value

uint

ActiveSeriesIndex

public int ActiveSeriesIndex { get; }

Property Value

int

BackgroundColor

Background color

public ISolidColorBrush BackgroundColor { get; set; }

Property Value

ISolidColorBrush

Colors

View settings

public ColorInfo Colors { get; }

Property Value

ColorInfo

CursorColor

Cursor color

public ISolidColorBrush CursorColor { get; set; }

Property Value

ISolidColorBrush

CursorValue

public double CursorValue { get; set; }

Property Value

double

DefaultSeriesColor

X-axis color

public ISolidColorBrush DefaultSeriesColor { get; set; }

Property Value

ISolidColorBrush

EnableCursorLock

public bool EnableCursorLock { get; set; }

Property Value

bool

GridColor

Grid color

public ISolidColorBrush GridColor { get; set; }

Property Value

ISolidColorBrush

this[uint]

public Series this[uint index] { get; }

Parameters

index uint

Property Value

Series

MaxCursorValue

public double MaxCursorValue { get; set; }

Property Value

double

Series

Series already added to the chart

public ReadOnlyCollection<Series> Series { get; }

Property Value

ReadOnlyCollection<Series>

Remarks

Use this property to modify properties of existing series

SeriesLayout

The manner in which series are laid out visually on a given chart

See SeriesLayoutTypes for more information

public SeriesLayoutTypes SeriesLayout { get; set; }

Property Value

SeriesLayoutTypes

TextColor

Text color

public ISolidColorBrush TextColor { get; set; }

Property Value

ISolidColorBrush

TimeLength

Length of time visible on the chart (seconds)

public double TimeLength { get; set; }

Property Value

double

UpdateData

Determines how incoming data is added to the buffer

public DataUpdateTypes UpdateData { get; set; }

Property Value

DataUpdateTypes

XAxisColor

X-axis color

public ISolidColorBrush XAxisColor { get; set; }

Property Value

ISolidColorBrush

XMax

X-axis maximum

public double XMax { get; set; }

Property Value

double

XMin

X-axis minimum

public double XMin { get; set; }

Property Value

double

YAxisColor

Y-axis color

public ISolidColorBrush YAxisColor { get; set; }

Property Value

ISolidColorBrush

YMax

Y-axis maximum

public double YMax { get; set; }

Property Value

double

YMin

Y-axis minimum

public double YMin { get; set; }

Property Value

double

Methods

AddSeries(IDataCapture, SeriesColor?, double?)

Start a new recording series using the specified capture implementation

public Series AddSeries(IDataCapture Capture, SeriesColor? Color = null, double? LineWidth = null)

Parameters

Capture IDataCapture

Data capture implementation. Captures data and relays it to the chart.

Color SeriesColor

Desired series color

LineWidth double?

Desired series line width

Returns

Series

Series instance attached to a chart

EnableAutoscale(uint?, bool)

Enable autoscale for the specified series

public void EnableAutoscale(uint? index = null, bool value = true)

Parameters

index uint?

Series index - defaults to currently active series

value bool

True to enable autoscale, False to disable autoscale

EnableEvents(uint?, bool)

Enable digital triggering for the specified series

public void EnableEvents(uint? index = null, bool value = true)

Parameters

index uint?

Series index - defaults to currently active series

value bool

True to enable triggering, False to disable triggering

GetSeriesData(uint?)

Retrieve sample data for the specified series

public ReadOnlySpan<Sample> GetSeriesData(uint? index = null)

Parameters

index uint?

(Optional) Series index (defaults to active series)

Returns

ReadOnlySpan<Sample>

Sample data buffer

InitializeComponent(bool)

Wires up the controls and optionally loads XAML markup and attaches dev tools (if Avalonia.Diagnostics package is referenced).

public void InitializeComponent(bool loadXaml = true)

Parameters

loadXaml bool

Should the XAML be loaded into the component.

OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs)

protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)

Parameters

e VisualTreeAttachmentEventArgs

PauseSeries(uint?)

Pause screen updates for the specified series

public void PauseSeries(uint? index = null)

Parameters

index uint?

Series index - defaults to currently active series

RemoveSeries(uint?)

Remove the series associated with the specified index

public void RemoveSeries(uint? index = null)

Parameters

index uint?

Series index - defaults to currently active series

ResumeSeries(uint?)

Resume screen updates for the specified series

public void ResumeSeries(uint? index = null)

Parameters

index uint?

Series index - defaults to currently active series

SaveSeriesDataAs(string, uint?)

Retrieve sample data for the specified series and save it to disk

public void SaveSeriesDataAs(string path, uint? index = null)

Parameters

path string

Save file path

index uint?

(Optional) Series index (defaults to active series)