Table of Contents

Class DebugImage

Namespace
DrawnUi.Draw
Assembly
DrawnUi.Maui.dll

Control for displaying used Surface as a preview image, for debugging purposes. Do not use this in prod, this will be invalidated every frame, causing non-stop screen update.

public class DebugImage : SkiaShape, INotifyPropertyChanged, IEffectControlProvider, IToolTipElement, IContextFlyoutElement, IAnimatable, IVisualElementController, IElementController, IView, ITransform, IElement, IVisualTreeElement, IContainer, IList<IView>, ICollection<IView>, IEnumerable<IView>, IEnumerable, ISkiaGestureListener, IHasAfterEffects, ISkiaDisposable, ISkiaGridLayout, ISkiaLayout, ISkiaControl, IDrawnBase, ICanBeUpdatedWithContext, ICanBeUpdated, ILayoutInsideViewport, IInsideViewport, IVisibilityAware, IDisposable
Inheritance
DebugImage
Implements
Inherited Members
Extension Methods

Fields

AttachToProperty

public static readonly BindableProperty AttachToProperty

Field Value

BindableProperty

TextProperty

public static readonly BindableProperty TextProperty

Field Value

BindableProperty

Properties

AttachTo

public CachedObject AttachTo { get; set; }

Property Value

CachedObject

Caption

public SkiaLabel Caption { get; protected set; }

Property Value

SkiaLabel

Display

public SkiaImage Display { get; protected set; }

Property Value

SkiaImage

Text

public string Text { get; set; }

Property Value

string

Methods

CreateLabel()

protected virtual SkiaLabel CreateLabel()

Returns

SkiaLabel

CreatePreview()

protected virtual SkiaImage CreatePreview()

Returns

SkiaImage

OnDisposing()

Base performs some cleanup actions with Superview

public override void OnDisposing()

OnMeasuring(float, float, float)

If you call this while measurement is in process (IsMeasuring==True) will return last measured value.

public override ScaledSize OnMeasuring(float widthConstraint, float heightConstraint, float scale)

Parameters

widthConstraint float
heightConstraint float
scale float

Returns

ScaledSize

Paint(DrawingContext)

This is the main drawing routine you should override to draw something. Base one paints background color inside DrawingRect that was defined by Arrange inside base.Draw. Pass arguments if you want to use some time-frozen data for painting at any time from any thread..

protected override void Paint(DrawingContext ctx)

Parameters

ctx DrawingContext