Alba.Avalonia.FlexPanel 0.5.3

Suggested Alternatives

Avalonia.Labs.Panels

Additional Details

Was merged into official Avalonia.Labs.

dotnet add package Alba.Avalonia.FlexPanel --version 0.5.3
                    
NuGet\Install-Package Alba.Avalonia.FlexPanel -Version 0.5.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Alba.Avalonia.FlexPanel" Version="0.5.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Alba.Avalonia.FlexPanel" Version="0.5.3" />
                    
Directory.Packages.props
<PackageReference Include="Alba.Avalonia.FlexPanel" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Alba.Avalonia.FlexPanel --version 0.5.3
                    
#r "nuget: Alba.Avalonia.FlexPanel, 0.5.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Alba.Avalonia.FlexPanel@0.5.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Alba.Avalonia.FlexPanel&version=0.5.3
                    
Install as a Cake Addin
#tool nuget:?package=Alba.Avalonia.FlexPanel&version=0.5.3
                    
Install as a Cake Tool

Alba.Avalonia.FlexPanel

NuGet release version AppVeyor build master GitHub release version

Panel implementing CSS-like flexbox for Avalonia 11.

Features

Flexbox features:

  • direction: row, column, row reverse, column reverse
  • flex-wrap: nowrap, wrap, wrap-reverse
  • align-items, align-self: flex-start, flex-end, center, stretch
  • align-content, justify-content: flex-start, flex-end, center, space-between, space-around, space-evenly
  • flex-basis: content, length
  • flex-grow, flex-shrink, order
  • row-gap, column-gap

Important

Before using this library, make sure AvaloniaUI or AvaloniaUI Labs don't include a more fully-featured implementation of FlexPanel yet. Currently they don't, but this ReadMe isn't guaranteed to be up to date. Refer to the list below for a comparison of the currently implemented features.

Alternatives

  • AvaloniaUI/Avalonia.Labs (pull 45) (modification of jp2masa's implementation):

    • Advantages:
      • Supports:
        • flex-basis: percent
        • margin:auto behavior on non-stretch alignment
        • partial main axis free space distribution
      • Fork of offical AvaloniaUI labs
      • Less bugs, better compatibility with the Flexbox standard
    • Disadvantages:
      • No NuGet package
  • AvaloniaUI/Avalonia.Labs (migrated jp2masa's implementation):

    • Advantages:
      • Offical AvaloniaUI labs
    • Disadvantages:
      • Doesn't support: flex-grow, flex-shrink, flex-basis
      • Non-standard calculation of gaps, alignment etc.
  • jp2masa/Avalonia.Flexbox (alternative implementation):

    • Advantages:
      • Supports: FlexLayout for ItemsRepeater
    • Disadvantages:
      • Doesn't support: flex-grow, flex-shrink, flex-basis
  • dotNevereverlie/Avalonia.FlexPanel (alternative port):

    • Disadvantages:
      • Doesn't support: Avalonia 11, row-gap, column-gap, space-evenly
      • Severe bugs

Acknowledgements

Based on:

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.