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, IVelloDiagnosticsProvider
Inheritance
object ← DependencyObject ← UIElement ← FrameworkElement ← VelloCoreWindowHost
Implements
IEquatable<DependencyObject>, IAnimationObject, IVisualElement, IVisualElement2, IEquatable<UIElement>, IWinRTObject, IUnmanagedVirtualMethodTableProvider, IDynamicInterfaceCastable, IEquatable<FrameworkElement>, IDisposable, IVelloSwapChainPresenterHost, 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
DiagnosticsProperty
public static readonly DependencyProperty DiagnosticsProperty
Field Value
PreferredBackendProperty
public static readonly DependencyProperty PreferredBackendProperty
Field Value
RenderLoopDriverProperty
public static readonly DependencyProperty RenderLoopDriverProperty
Field Value
RenderModeProperty
public static readonly DependencyProperty RenderModeProperty
Field Value
Properties
DeviceOptions
public VelloGraphicsDeviceOptions DeviceOptions { get; set; }
Property Value
Diagnostics
public WindowsGpuDiagnostics Diagnostics { get; }
Property Value
IsContinuousRendering
public bool IsContinuousRendering { get; }
Property Value
PreferredBackend
public VelloRenderBackend PreferredBackend { get; set; }
Property Value
VelloRenderBackend
RenderLoopDriver
public RenderLoopDriver RenderLoopDriver { get; set; }
Property Value
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
PaintSurface
public event EventHandler<VelloPaintSurfaceEventArgs>? PaintSurface
Event Type
EventHandler<VelloPaintSurfaceEventArgs>?
RenderSurface
public event EventHandler<VelloSwapChainRenderEventArgs>? RenderSurface
Event Type
EventHandler<VelloSwapChainRenderEventArgs>?