Skip to main content

Class VelloCoreWindowHost

Namespace: VelloSharp.Uno.Controls
Assembly: VelloSharp.Uno.dll

public sealed class VelloCoreWindowHost : FrameworkElement, IEquatable<DependencyObject>, IAnimationObject, IVisualElement, IVisualElement2, IEquatable<UIElement>, IWinRTObject, IUnmanagedVirtualMethodTableProvider, IDynamicInterfaceCastable, IEquatable<FrameworkElement>, IDisposable, IVelloSwapChainPresenterHost, IVelloSurfaceRenderCallback, IVelloDiagnosticsProvider

Inheritance​

object ← DependencyObject ← UIElement ← FrameworkElement ← VelloCoreWindowHost

Implements​

IEquatable<DependencyObject>, IAnimationObject, IVisualElement, IVisualElement2, IEquatable<UIElement>, IWinRTObject, IUnmanagedVirtualMethodTableProvider, IDynamicInterfaceCastable, IEquatable<FrameworkElement>, IDisposable, IVelloSwapChainPresenterHost, IVelloSurfaceRenderCallback, IVelloDiagnosticsProvider

Inherited Members​

FrameworkElement.As<I>(), FrameworkElement.DeferTree(DependencyObject), FrameworkElement.FromAbi(nint), FrameworkElement.Equals(FrameworkElement), FrameworkElement.Equals(object), FrameworkElement.GetHashCode(), FrameworkElement.FindName(string), FrameworkElement.SetBinding(DependencyProperty, BindingBase), FrameworkElement.GetBindingExpression(DependencyProperty), FrameworkElement.ActualHeightProperty, FrameworkElement.ActualThemeProperty, FrameworkElement.ActualWidthProperty, FrameworkElement.AllowFocusOnInteractionProperty, FrameworkElement.AllowFocusWhenDisabledProperty, FrameworkElement.DataContextProperty, FrameworkElement.FlowDirectionProperty, FrameworkElement.FocusVisualMarginProperty, FrameworkElement.FocusVisualPrimaryBrushProperty, FrameworkElement.FocusVisualPrimaryThicknessProperty, FrameworkElement.FocusVisualSecondaryBrushProperty, FrameworkElement.FocusVisualSecondaryThicknessProperty, FrameworkElement.HeightProperty, FrameworkElement.HorizontalAlignmentProperty, FrameworkElement.LanguageProperty, FrameworkElement.MarginProperty, FrameworkElement.MaxHeightProperty, FrameworkElement.MaxWidthProperty, FrameworkElement.MinHeightProperty, FrameworkElement.MinWidthProperty, FrameworkElement.NameProperty, FrameworkElement.RequestedThemeProperty, FrameworkElement.StyleProperty, FrameworkElement.TagProperty, FrameworkElement.VerticalAlignmentProperty, FrameworkElement.WidthProperty, FrameworkElement.ActualHeight, FrameworkElement.ActualTheme, FrameworkElement.ActualWidth, FrameworkElement.AllowFocusOnInteraction, FrameworkElement.AllowFocusWhenDisabled, FrameworkElement.BaseUri, FrameworkElement.DataContext, FrameworkElement.FlowDirection, FrameworkElement.FocusVisualMargin, FrameworkElement.FocusVisualPrimaryBrush, FrameworkElement.FocusVisualPrimaryThickness, FrameworkElement.FocusVisualSecondaryBrush, FrameworkElement.FocusVisualSecondaryThickness, FrameworkElement.Height, FrameworkElement.HorizontalAlignment, FrameworkElement.IsLoaded, FrameworkElement.Language, FrameworkElement.Margin, FrameworkElement.MaxHeight, FrameworkElement.MaxWidth, FrameworkElement.MinHeight, FrameworkElement.MinWidth, FrameworkElement.Name, FrameworkElement.Parent, FrameworkElement.RequestedTheme, FrameworkElement.Resources, FrameworkElement.Style, FrameworkElement.Tag, FrameworkElement.Triggers, FrameworkElement.VerticalAlignment, FrameworkElement.Width, FrameworkElement.ActualThemeChanged, FrameworkElement.DataContextChanged, FrameworkElement.EffectiveViewportChanged, FrameworkElement.LayoutUpdated, FrameworkElement.Loaded, FrameworkElement.Loading, FrameworkElement.SizeChanged, FrameworkElement.Unloaded, UIElement.As<I>(), UIElement.TryStartDirectManipulation(Pointer), UIElement.RegisterAsScrollPort(UIElement), UIElement.FromAbi(nint), UIElement.Equals(UIElement), UIElement.Equals(object), UIElement.GetHashCode(), UIElement.Measure(Size), UIElement.Arrange(Rect), UIElement.CapturePointer(Pointer), UIElement.ReleasePointerCapture(Pointer), UIElement.ReleasePointerCaptures(), UIElement.AddHandler(RoutedEvent, object, bool), UIElement.RemoveHandler(RoutedEvent, object), UIElement.TransformToVisual(UIElement), UIElement.InvalidateMeasure(), UIElement.InvalidateArrange(), UIElement.UpdateLayout(), UIElement.CancelDirectManipulations(), UIElement.StartDragAsync(PointerPoint), UIElement.StartBringIntoView(), UIElement.StartBringIntoView(BringIntoViewOptions), UIElement.TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs), UIElement.Focus(FocusState), UIElement.StartAnimation(ICompositionAnimationBase), UIElement.StopAnimation(ICompositionAnimationBase), UIElement.PopulatePropertyInfo(string, AnimationPropertyInfo), UIElement.GetVisualInternal(), UIElement.AccessKeyProperty, UIElement.AccessKeyScopeOwnerProperty, UIElement.AllowDropProperty, UIElement.BringIntoViewRequestedEvent, UIElement.CacheModeProperty, UIElement.CanBeScrollAnchorProperty, UIElement.CanDragProperty, UIElement.CharacterReceivedEvent, UIElement.ClipProperty, UIElement.CompositeModeProperty, UIElement.ContextFlyoutProperty, UIElement.ContextRequestedEvent, UIElement.DoubleTappedEvent, UIElement.DragEnterEvent, UIElement.DragLeaveEvent, UIElement.DragOverEvent, UIElement.DropEvent, UIElement.ExitDisplayModeOnAccessKeyInvokedProperty, UIElement.FocusStateProperty, UIElement.GettingFocusEvent, UIElement.HighContrastAdjustmentProperty, UIElement.HoldingEvent, UIElement.IsAccessKeyScopeProperty, UIElement.IsDoubleTapEnabledProperty, UIElement.IsHitTestVisibleProperty, UIElement.IsHoldingEnabledProperty, UIElement.IsRightTapEnabledProperty, UIElement.IsTabStopProperty, UIElement.IsTapEnabledProperty, UIElement.KeyDownEvent, UIElement.KeyTipHorizontalOffsetProperty, UIElement.KeyTipPlacementModeProperty, UIElement.KeyTipTargetProperty, UIElement.KeyTipVerticalOffsetProperty, UIElement.KeyUpEvent, UIElement.KeyboardAcceleratorPlacementModeProperty, UIElement.KeyboardAcceleratorPlacementTargetProperty, UIElement.LightsProperty, UIElement.LosingFocusEvent, UIElement.ManipulationCompletedEvent, UIElement.ManipulationDeltaEvent, UIElement.ManipulationInertiaStartingEvent, UIElement.ManipulationModeProperty, UIElement.ManipulationStartedEvent, UIElement.ManipulationStartingEvent, UIElement.NoFocusCandidateFoundEvent, UIElement.OpacityProperty, UIElement.PointerCanceledEvent, UIElement.PointerCaptureLostEvent, UIElement.PointerCapturesProperty, UIElement.PointerEnteredEvent, UIElement.PointerExitedEvent, UIElement.PointerMovedEvent, UIElement.PointerPressedEvent, UIElement.PointerReleasedEvent, UIElement.PointerWheelChangedEvent, UIElement.PreviewKeyDownEvent, UIElement.PreviewKeyUpEvent, UIElement.ProjectionProperty, UIElement.RenderTransformOriginProperty, UIElement.RenderTransformProperty, UIElement.RightTappedEvent, UIElement.ShadowProperty, UIElement.TabFocusNavigationProperty, UIElement.TabIndexProperty, UIElement.TappedEvent, UIElement.Transform3DProperty, UIElement.TransitionsProperty, UIElement.UseLayoutRoundingProperty, UIElement.UseSystemFocusVisualsProperty, UIElement.VisibilityProperty, UIElement.XYFocusDownNavigationStrategyProperty, UIElement.XYFocusDownProperty, UIElement.XYFocusKeyboardNavigationProperty, UIElement.XYFocusLeftNavigationStrategyProperty, UIElement.XYFocusLeftProperty, UIElement.XYFocusRightNavigationStrategyProperty, UIElement.XYFocusRightProperty, UIElement.XYFocusUpNavigationStrategyProperty, UIElement.XYFocusUpProperty, UIElement.AccessKey, UIElement.AccessKeyScopeOwner, UIElement.ActualOffset, UIElement.ActualSize, UIElement.AllowDrop, UIElement.CacheMode, UIElement.CanBeScrollAnchor, UIElement.CanDrag, UIElement.CenterPoint, UIElement.Clip, UIElement.CompositeMode, UIElement.ContextFlyout, UIElement.DesiredSize, UIElement.ExitDisplayModeOnAccessKeyInvoked, UIElement.FocusState, UIElement.HighContrastAdjustment, UIElement.IsAccessKeyScope, UIElement.IsDoubleTapEnabled, UIElement.IsHitTestVisible, UIElement.IsHoldingEnabled, UIElement.IsRightTapEnabled, UIElement.IsTabStop, UIElement.IsTapEnabled, UIElement.KeyTipHorizontalOffset, UIElement.KeyTipPlacementMode, UIElement.KeyTipTarget, UIElement.KeyTipVerticalOffset, UIElement.KeyboardAcceleratorPlacementMode, UIElement.KeyboardAcceleratorPlacementTarget, UIElement.KeyboardAccelerators, UIElement.Lights, UIElement.ManipulationMode, UIElement.Opacity, UIElement.OpacityTransition, UIElement.PointerCaptures, UIElement.Projection, UIElement.RasterizationScale, UIElement.RenderSize, UIElement.RenderTransform, UIElement.RenderTransformOrigin, UIElement.Rotation, UIElement.RotationAxis, UIElement.RotationTransition, UIElement.Scale, UIElement.ScaleTransition, UIElement.Shadow, UIElement.TabFocusNavigation, UIElement.TabIndex, UIElement.Transform3D, UIElement.TransformMatrix, UIElement.Transitions, UIElement.Translation, UIElement.TranslationTransition, UIElement.UseLayoutRounding, UIElement.UseSystemFocusVisuals, UIElement.Visibility, UIElement.XYFocusDown, UIElement.XYFocusDownNavigationStrategy, UIElement.XYFocusKeyboardNavigation, UIElement.XYFocusLeft, UIElement.XYFocusLeftNavigationStrategy, UIElement.XYFocusRight, UIElement.XYFocusRightNavigationStrategy, UIElement.XYFocusUp, UIElement.XYFocusUpNavigationStrategy, UIElement.XamlRoot, UIElement.AccessKeyDisplayDismissed, UIElement.AccessKeyDisplayRequested, UIElement.AccessKeyInvoked, UIElement.BringIntoViewRequested, UIElement.CharacterReceived, UIElement.ContextCanceled, UIElement.ContextRequested, UIElement.DoubleTapped, UIElement.DragEnter, UIElement.DragLeave, UIElement.DragOver, UIElement.DragStarting, UIElement.Drop, UIElement.DropCompleted, UIElement.GettingFocus, UIElement.GotFocus, UIElement.Holding, UIElement.KeyDown, UIElement.KeyUp, UIElement.LosingFocus, UIElement.LostFocus, UIElement.ManipulationCompleted, UIElement.ManipulationDelta, UIElement.ManipulationInertiaStarting, UIElement.ManipulationStarted, UIElement.ManipulationStarting, UIElement.NoFocusCandidateFound, UIElement.PointerCanceled, UIElement.PointerCaptureLost, UIElement.PointerEntered, UIElement.PointerExited, UIElement.PointerMoved, UIElement.PointerPressed, UIElement.PointerReleased, UIElement.PointerWheelChanged, UIElement.PreviewKeyDown, UIElement.PreviewKeyUp, UIElement.ProcessKeyboardAccelerators, UIElement.RightTapped, UIElement.Tapped, DependencyObject.FromAbi(nint), DependencyObject.Equals(DependencyObject), DependencyObject.Equals(object), DependencyObject.GetHashCode(), DependencyObject.GetValue(DependencyProperty), DependencyObject.SetValue(DependencyProperty, object), DependencyObject.ClearValue(DependencyProperty), DependencyObject.ReadLocalValue(DependencyProperty), DependencyObject.GetAnimationBaseValue(DependencyProperty), DependencyObject.RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback), DependencyObject.UnregisterPropertyChangedCallback(DependencyProperty, long), DependencyObject.Dispatcher, DependencyObject.DispatcherQueue, object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()

Constructors​

VelloCoreWindowHost()​

public VelloCoreWindowHost()

Fields​

DeviceOptionsProperty​

public static readonly DependencyProperty DeviceOptionsProperty

Field Value​

DependencyProperty

DiagnosticsProperty​

public static readonly DependencyProperty DiagnosticsProperty

Field Value​

DependencyProperty

PreferredBackendProperty​

public static readonly DependencyProperty PreferredBackendProperty

Field Value​

DependencyProperty

RenderLoopDriverProperty​

public static readonly DependencyProperty RenderLoopDriverProperty

Field Value​

DependencyProperty

RenderModeProperty​

public static readonly DependencyProperty RenderModeProperty

Field Value​

DependencyProperty

Properties​

DeviceOptions​

public VelloGraphicsDeviceOptions DeviceOptions { get; set; }

Property Value​

VelloGraphicsDeviceOptions

Diagnostics​

public WindowsGpuDiagnostics Diagnostics { get; }

Property Value​

WindowsGpuDiagnostics

IsContinuousRendering​

public bool IsContinuousRendering { get; }

Property Value​

bool

PreferredBackend​

public VelloRenderBackend PreferredBackend { get; set; }

Property Value​

VelloRenderBackend

RenderLoopDriver​

public RenderLoopDriver RenderLoopDriver { get; set; }

Property Value​

RenderLoopDriver

RenderMode​

public VelloRenderMode RenderMode { get; set; }

Property Value​

VelloRenderMode

Methods​

ArrangeOverride(Size)​

Provides the behavior for the "Arrange" pass of layout. Classes can override this method to define their own "Arrange" pass behavior.

protected override Size ArrangeOverride(Size finalSize)

Parameters​

finalSize Size

The final area within the parent that this object should use to arrange itself and its children.

Returns​

Size

The actual size that is used after the element is arranged in layout.

Dispose()​

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

public void Dispose()

MeasureOverride(Size)​

Provides the behavior for the "Measure" pass of the layout cycle. Classes can override this method to define their own "Measure" pass behavior.

protected override Size MeasureOverride(Size availableSize)

Parameters​

availableSize Size

The available size that this object can give to child objects. Infinity can be specified as a value to indicate that the object will size to whatever content is available.

Returns​

Size

The size that this object determines it needs during layout, based on its calculations of the allocated sizes for child objects or based on other considerations such as a fixed container size.

RequestRender()​

public void RequestRender()

ContentInvalidated​

public event EventHandler? ContentInvalidated

Event Type​

EventHandler?

PaintSurface​

public event EventHandler<VelloPaintSurfaceEventArgs>? PaintSurface

Event Type​

EventHandler<VelloPaintSurfaceEventArgs>?

RenderSurface​

public event EventHandler<VelloSwapChainRenderEventArgs>? RenderSurface

Event Type​

EventHandler<VelloSwapChainRenderEventArgs>?

RenderSurfaceSkia​

public event EventHandler<VelloSurfaceRenderEventArgs>? RenderSurfaceSkia

Event Type​

EventHandler<VelloSurfaceRenderEventArgs>?