Skip to main content
net6.0

Cross platform controls for AvaloniauUI (ColumnsPanel,...)

Published
Nov 19, 2023
2y ago
Total Downloads
1.7K
1,710

Install

dotnet add package Iciclecreek.Avalonia.Controls --version 1.0.0
ProductVersions
.NET
net6.0

README

Icon

Iciclecreek.Avalonia.Controls

This is a package of UI controls for Avalonia UI.

Installation

Add the Iciclecreek.Avalonia.Controls package to your project

Update your xmlns

	xmlns:ice="using:Iciclecreek.Avalonia.Controls"

ColumnsPanel Control

The ColumnsPanel control is a panel which dynamically lays out its children in left-to right order into fixed width columns. Columns will be added or removed to fill the horizontal space of the control. If there is not enough space for MinColumns then the item wills be scaled down to fit proportionally. ColumnsPanel

Usage

<ice:ColumnsPanel ColumnWidth="100">
	<TextBlock Text="Column 1" />
	<TextBlock Text="Column 2" />
	<TextBlock Text="Column 3" />
    ...
</ice:ColumnsPanel>

Example of a columns panel in a items control

<ItemsControl Items="{Binding Items}">
	<ItemsControl.ItemsPanel>
		<ItemsPanelTemplate>
			<ice:ColumnsPanel ColumnWidth="300" />
		</ItemsPanelTemplate>
	</ItemsControl.ItemsPanel>
	<ItemsControl.ItemTemplate>
		<DataTemplate>
			<Image Source="{Binding Source}" />
		</DataTemplate>
	</ItemsControl.ItemTemplate>
</ItemsControl>

Properties

Property Default Description
ColumnWidth 300 The width of each column.
MinColumns 1 The minimum number of columns. If ColumnWidth*MinColumns is not possible the column width will scale to fit.
MaxColumns Int.MaxValue The maximum number of columns.
Gap 0 The vertical gap between each item in a column
ColumnGap 0 The horizontal gap between each column

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

Compatibility metadata lists 1 target framework; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.