BarcodePresenter Class
Represents a control that presents a barcode.
[TemplatePart(Name = "PART_BarcodeHost", Type = typeof(Decorator))]
[TemplatePart(Name = "PART_HeaderPresenter", Type = typeof(ContentPresenter))]
public class BarcodePresenter : TemplatedControl, IDataContextProvider, ILogical, IThemeVariantHost, IResourceHost, IResourceNode, IStyleHost, ISetLogicalParent, ISetInheritanceParent, INamed, IInputElement, IDataTemplateHost, ISetterValue
- Inheritance:
- object AvaloniaObject Animatable StyledElement Visual Layoutable Interactive InputElement Control TemplatedControl object
- Implements:
- IDataContextProvider ILogical IThemeVariantHost IResourceHost IResourceNode IStyleHost ISetLogicalParent ISetInheritanceParent INamed IInputElement IDataTemplateHost ISetterValue
Constructors
BarcodePresenter()
Initializes an instance of the class.
public BarcodePresenter()
Properties
Header
The header content that appears above the barcode.
HeaderTemplate
The data template used to render the header content.
public IDataTemplate? HeaderTemplate { get; set; }
Property Value
- IDataTemplate
ModuleShapeKind
The shape to use for rendering barcode modules.
public BarcodeShapeKind ModuleShapeKind { get; set; }
Property Value
- BarcodeShapeKind:
The default value is Default. Linear symbologies ignore non-default values.
PrimaryAccent
The primary accent brush used for customization, such as the outer border of finder patterns in QR Codes.
public IBrush? PrimaryAccent { get; set; }
Property Value
- IBrush
Remarks
When null, finder outer border modules are included in the main foreground path.
SecondaryAccent
The secondary accent brush used for customization, such as the inner square of finder patterns in QR Codes.
public IBrush? SecondaryAccent { get; set; }
Property Value
- IBrush
Remarks
When null, finder inner square modules are included in the main foreground path.
SupplementValue
The supplement value to encode for symbologies that support add-on supplements, such as the EAN/UPC variants.
Symbology
The barcode symbology.
UseThemeColors
Indicates whether to use theme colors for the generated barcode content, which can allow a white bar foreground on dark background in dark themes.
public bool UseThemeColors { get; set; }
Property Value
- bool:
The default value is
false. When this property isfalse, the bar foreground will be black and the background white, regardless of theme.
Value
The value to encode.
ValueFontFamily
The Avalonia.Media.FontFamily to use for displayed Value text.
public FontFamily? ValueFontFamily { get; set; }
Property Value
- FontFamily
ValueFontSize
The font size to use for displayed Value text.
ValueForeground
The Avalonia.Media.IBrush to use for rendering Value text.
public IBrush? ValueForeground { get; set; }
Property Value
- IBrush
ZoomLevel
The zoom level, which is a percentage.
public double ZoomLevel { get; set; }
Property Value
- double:
The default value is
1.0, which is100%.
Methods
OnApplyTemplate(TemplateAppliedEventArgs)
Called when the control's template is applied. In simple terms, this means the method is called just before the control is displayed.
protected override void OnApplyTemplate(TemplateAppliedEventArgs e)
| Parameter | Type | Description |
|---|---|---|
| e | TemplateAppliedEventArgs | The event args. |
OnCreateAutomationPeer()
Returns a new, type-specific Avalonia.Automation.Peers.AutomationPeer implementation for the control.
protected override AutomationPeer OnCreateAutomationPeer()
Returns
- AutomationPeer:
The type-specific Avalonia.Automation.Peers.AutomationPeer implementation.
Fields
HeaderProperty
Defines the Header property.
public static readonly StyledProperty<object?> HeaderProperty
HeaderTemplateProperty
Defines the HeaderTemplate property.
public static readonly StyledProperty<IDataTemplate?> HeaderTemplateProperty
ModuleShapeKindProperty
Defines the ModuleShapeKind property.
public static readonly StyledProperty<BarcodeShapeKind> ModuleShapeKindProperty
PrimaryAccentProperty
Defines the PrimaryAccent property.
public static readonly StyledProperty<IBrush?> PrimaryAccentProperty
SecondaryAccentProperty
Defines the SecondaryAccent property.
public static readonly StyledProperty<IBrush?> SecondaryAccentProperty
SupplementValueProperty
Defines the SupplementValue property.
public static readonly StyledProperty<string?> SupplementValueProperty
SymbologyProperty
Defines the Symbology property.
public static readonly StyledProperty<BarcodeSymbologyBase?> SymbologyProperty
UseThemeColorsProperty
Defines the UseThemeColors property.
public static readonly StyledProperty<bool> UseThemeColorsProperty
ValueFontFamilyProperty
Defines the ValueFontFamily property.
public static readonly StyledProperty<FontFamily?> ValueFontFamilyProperty
ValueFontSizeProperty
Defines the ValueFontSize property.
public static readonly StyledProperty<double> ValueFontSizeProperty
ValueForegroundProperty
Defines the ValueForeground property.
public static readonly StyledProperty<IBrush?> ValueForegroundProperty
ValueProperty
Defines the Value property.
public static readonly StyledProperty<string?> ValueProperty
ZoomLevelProperty
Defines the ZoomLevel property.
public static readonly StyledProperty<double> ZoomLevelProperty
Inherited Members
- 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.LetterSpacingProperty
- TemplatedControl.PaddingProperty
- TemplatedControl.TemplateProperty
- TemplatedControl.IsTemplateFocusTargetProperty
- TemplatedControl.TemplateAppliedEvent
- TemplatedControl.GetIsTemplateFocusTarget(Control)
- TemplatedControl.SetIsTemplateFocusTarget(Control, bool)
- TemplatedControl.ApplyTemplate()
- TemplatedControl.GetTemplateFocusTarget()
- TemplatedControl.OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs)
- TemplatedControl.OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs)
- 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.LetterSpacing
- TemplatedControl.Padding
- TemplatedControl.Template
- TemplatedControl.TemplateApplied
- Control.FocusAdornerProperty
- Control.TagProperty
- Control.ContextMenuProperty
- Control.ContextFlyoutProperty
- Control.RequestBringIntoViewEvent
- Control.LoadedEvent
- Control.UnloadedEvent
- Control.SizeChangedEvent
- Control.OnLoaded(RoutedEventArgs)
- Control.OnUnloaded(RoutedEventArgs)
- Control.OnSizeChanged(SizeChangedEventArgs)
- Control.OnAttachedToVisualTreeCore(VisualTreeAttachmentEventArgs)
- Control.OnDetachedFromVisualTreeCore(VisualTreeAttachmentEventArgs)
- Control.OnGotFocus(FocusChangedEventArgs)
- Control.OnLostFocus(FocusChangedEventArgs)
- Control.OnPointerReleased(PointerReleasedEventArgs)
- Control.OnKeyUp(KeyEventArgs)
- Control.OnPropertyChanged(AvaloniaPropertyChangedEventArgs)
- Control.UpdateDataValidation(AvaloniaProperty, BindingValueType, Exception)
- Control.FocusAdorner
- Control.DataTemplates
- Control.ContextMenu
- Control.ContextFlyout
- Control.IsLoaded
- Control.Tag
- 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.GettingFocusEvent
- InputElement.LostFocusEvent
- InputElement.LosingFocusEvent
- 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.ContextRequestedEvent
- InputElement.ContextCanceledEvent
- InputElement.IsHoldingEnabledProperty
- InputElement.IsHoldWithMouseEnabledProperty
- InputElement.PinchEvent
- InputElement.PinchEndedEvent
- InputElement.PullGestureEvent
- InputElement.PullGestureEndedEvent
- InputElement.SwipeGestureEvent
- InputElement.SwipeGestureEndedEvent
- InputElement.ScrollGestureEvent
- InputElement.ScrollGestureInertiaStartingEvent
- InputElement.ScrollGestureEndedEvent
- InputElement.PointerTouchPadGestureMagnifyEvent
- InputElement.PointerTouchPadGestureRotateEvent
- InputElement.PointerTouchPadGestureSwipeEvent
- InputElement.TappedEvent
- InputElement.RightTappedEvent
- InputElement.HoldingEvent
- InputElement.DoubleTappedEvent
- InputElement.Focus(NavigationMethod, KeyModifiers)
- InputElement.OnAccessKey(RoutedEventArgs)
- InputElement.OnGettingFocus(FocusChangingEventArgs)
- InputElement.OnLosingFocus(FocusChangingEventArgs)
- InputElement.OnKeyDown(KeyEventArgs)
- InputElement.OnTextInput(TextInputEventArgs)
- InputElement.OnPointerEntered(PointerEventArgs)
- InputElement.OnPointerExited(PointerEventArgs)
- InputElement.OnPointerMoved(PointerEventArgs)
- InputElement.OnPointerPressed(PointerPressedEventArgs)
- InputElement.GetNextTabStopOverride()
- InputElement.GetPreviousTabStopOverride()
- InputElement.GetFirstFocusableElementOverride()
- InputElement.GetLastFocusableElementOverride()
- InputElement.OnPointerCaptureLost(PointerCaptureLostEventArgs)
- InputElement.ProcessTabStopOverride(IInputElement, IInputElement, bool, bool, ref IInputElement)
- InputElement.ProcessCandidateTabStopOverride(IInputElement, IInputElement, IInputElement, bool, ref IInputElement)
- InputElement.OnPointerWheelChanged(PointerWheelEventArgs)
- InputElement.OnTapped(TappedEventArgs)
- InputElement.OnRightTapped(TappedEventArgs)
- InputElement.OnDoubleTapped(TappedEventArgs)
- InputElement.OnHolding(HoldingRoutedEventArgs)
- InputElement.UpdateIsEffectivelyEnabled()
- InputElement.GetIsHoldingEnabled(StyledElement)
- InputElement.SetIsHoldingEnabled(StyledElement, bool)
- InputElement.GetIsHoldWithMouseEnabled(StyledElement)
- InputElement.SetIsHoldWithMouseEnabled(StyledElement, bool)
- 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.GettingFocus
- InputElement.LostFocus
- InputElement.LosingFocus
- InputElement.KeyDown
- InputElement.KeyUp
- InputElement.TextInput
- InputElement.TextInputMethodClientRequested
- InputElement.PointerEntered
- InputElement.PointerExited
- InputElement.PointerMoved
- InputElement.PointerPressed
- InputElement.PointerReleased
- InputElement.PointerCaptureLost
- InputElement.PointerWheelChanged
- InputElement.ContextRequested
- InputElement.ContextCanceled
- InputElement.Pinch
- InputElement.PinchEnded
- InputElement.PullGesture
- InputElement.PullGestureEnded
- InputElement.ScrollGesture
- InputElement.ScrollGestureInertiaStarting
- InputElement.ScrollGestureEnded
- InputElement.PointerTouchPadGestureMagnify
- InputElement.PointerTouchPadGestureRotate
- InputElement.SwipeGesture
- InputElement.SwipeGestureEnded
- InputElement.PointerTouchPadGestureSwipe
- InputElement.Tapped
- InputElement.RightTapped
- InputElement.Holding
- InputElement.DoubleTapped
- Interactive.AddHandler(RoutedEvent, Delegate, RoutingStrategies, bool)
- Interactive.AddHandler<TEventArgs>(RoutedEvent<TEventArgs>, EventHandler<TEventArgs>, RoutingStrategies, bool)
- Interactive.RemoveHandler(RoutedEvent, Delegate)
- Interactive.RemoveHandler<TEventArgs>(RoutedEvent<TEventArgs>, EventHandler<TEventArgs>)
- 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.CacheModeProperty
- 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.LogicalChildrenCollectionChanged(object, NotifyCollectionChangedEventArgs)
- Visual.OnAttachedToVisualTree(VisualTreeAttachmentEventArgs)
- Visual.OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs)
- Visual.InvalidateMirrorTransform()
- Visual.Bounds
- Visual.ClipToBounds
- Visual.Clip
- Visual.IsEffectivelyVisible
- Visual.IsVisible
- Visual.Opacity
- Visual.OpacityMask
- Visual.CacheMode
- 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.TryGetResource(object, ThemeVariant, out object)
- StyledElement.OnDataContextChanged(EventArgs)
- 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.Equals(object)
- 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(AvaloniaProperty, object, BindingPriority)
- AvaloniaObject.SetValue<T>(StyledProperty<T>, T, BindingPriority)
- AvaloniaObject.SetValue<T>(DirectPropertyBase<T>, T)
- AvaloniaObject.SetCurrentValue(AvaloniaProperty, object)
- AvaloniaObject.SetCurrentValue<T>(StyledProperty<T>, T)
- AvaloniaObject.Bind(AvaloniaProperty, BindingBase)
- AvaloniaObject.Bind(AvaloniaProperty, IObservable<object>, BindingPriority)
- AvaloniaObject.Bind<T>(StyledProperty<T>, IObservable<object>, BindingPriority)
- AvaloniaObject.Bind<T>(StyledProperty<T>, IObservable<T>, BindingPriority)
- AvaloniaObject.Bind<T>(StyledProperty<T>, IObservable<BindingValue<T>>, BindingPriority)
- AvaloniaObject.Bind<T>(DirectPropertyBase<T>, IObservable<object>)
- AvaloniaObject.Bind<T>(DirectPropertyBase<T>, IObservable<T>)
- AvaloniaObject.Bind<T>(DirectPropertyBase<T>, IObservable<BindingValue<T>>)
- 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.Dispatcher
- AvaloniaObject.PropertyChanged
- object.GetType()
- object.MemberwiseClone()
- object.ToString()
- object.Equals(object, object)
- object.ReferenceEquals(object, object)