Skip to main content
.NETStandard2.0

Avalonia control for display material icons from Material.Icons

Published
Mar 23, 2023
3y ago
Total Downloads
859.8K
859,755

Install

dotnet add package Material.Icons.Avalonia --version 2.0.0-preview3
ProductVersions
.NET Standard
netstandard2.0

README

Material.Icons

Parsed icons set from materialdesignicons.com and display control implementations for different GUI frameworks.

  • All icons are always up-to-date because automatically updated every 6 hours.
  • Small package size because icons are graphically encoded via SVG Path.
  • Icon types are strongly typed enum, so your IDE will suggest available variants:
    895428ad-6010-4ffd-bd88-61aecd50f5e1

Structure

This project consists of 3 parts:

  • contains info about the icons

  • contains controls for AvaloniaUI

  • contains controls for WPF

  • FAQ - frequently asked questions

Avalonia

Getting started
  1. Install Material.Icons.Avalonia nuget package:
    dotnet add package Material.Icons.Avalonia
    
    avalonia-nuget avalonia-nuget
  2. Include styles in App.xaml (for 2.0.0 version and higher):
    <Application xmlns:materialIcons="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia" 
                 ...>
      <Application.Styles>
        ...
        <materialIcons:MaterialIconStyles />
      </Application.Styles>
    </Application>
    
    For 1.*.*:
    <Application ...>
      <Application.Styles>
        ...
        <StyleInclude Source="avares://Material.Icons.Avalonia/App.xaml" />
      </Application.Styles>
    </Application>
    
Using

Add Material.Icons.Avalonia namespace to the root element of your file (your IDE can suggest it or do it automatically):

xmlns:materialIcons="clr-namespace:Material.Icons.Avalonia;assembly=Material.Icons.Avalonia"

Use MaterialIcon control:

<materialIcons:MaterialIcon Kind="Abacus" />

The Foreground property controls the color of the icon.
Also, there is MaterialIconExt which allows you to use is as the markup extension:

<Button Content="{materialIcons:MaterialIconExt Kind=Abacus}" />

WPF

Getting started

Install Material.Icons.WPF nuget package:

dotnet add package Material.Icons.WPF

wpf-nuget wpf-nuget

Using

Add Material.Icons.WPF namespace to the root element of your file (your IDE can suggest it or do it automatically):

xmlns:materialIcons="clr-namespace:Material.Icons.WPF;assembly=Material.Icons.WPF"

Use MaterialIcon control:

<materialIcons:MaterialIcon Kind="Abacus" />

The Foreground property controls the color of the icon.
Also, there is MaterialIconExt which allows you to use is as the markup extension:

<Button Content="{materialIcons:MaterialIconExt Kind=Abacus}" />

Meta

Getting started

Install Material.Icons nuget package:

dotnet add package Material.Icons

icons-nuget icons-nuget

Using

Icon types stored in Material.Icons.MaterialIconKind enum.
We can resolve an icon path by using Material.Icons.MaterialIconDataProvider.GetData().

FAQ

How to change icon color?
  • Change Foreground property.
How to update icons?
  • You can manually set Material.Icons package version in your project file.
What about versioning policy?
  • We use semver.
    Any package with identical major and minor versions is compatible.
    For example, 1.0.0 and 1.0.1 are compatible, but 1.0.0 and 1.1.0 might not be.

Changes from Previous Version

No structural changes between v2.0.0-preview2 and v2.0.0-preview3.

Adoption Assessment

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

This version is marked prerelease. Validate its API and upgrade path before production use.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.