This week (or last week?) I'm going to switch things up and organize the content that caught my attention into categories. I'm seeing more libraries and content themes emerging.
Simple, flexible, interactive & powerful charts, maps and gauges for .Net, LiveCharts2 can now practically run everywhere Maui, Uno Platform, Blazor-wasm, WPF, WinForms, Xamarin, Avalonia, WinUI, UWP.
LiveCharts2
LiveCharts2 (v2) is the evolution of LiveCharts (v0), it fixes the main design issues of its predecessor, it's focused to run everywhere, improves flexibility without losing what we already had in v0.
Extremely flexible data visualization library
The following image is a preview, v2.0 is beta now.
Here is a preview (1.4MB gif, wait for it to load if you see a blank space bellow this text...):
Get started
Live charts is a cross platforms charting library .Net, to get started go to https://lvcharts.com and take a look at the instalation guide of your target platform
the web site contains all the samples provided in this repo, docs and more.
LiveCharts supports:
Maui
Uno Platform
Wpf
WinUI
Xamarin.Forms
WindowsForms
BlazorWasm
Avalonia
Eto Forms
Uwp
You can also use LiveCharts 2 on a console app or on the server side installing only the core packages, take a look at this…
With this control you are able to create any style of button
This is possible as it acts as a wrapper to your XAML and provides you the events/ commands and properties to bind too.
It's also 100% accessible with each platform seeing/ treating the control as a native button.
The example page, has a bunch of different design to showcase the usage -
How to use it?
Install the NuGet package into your shared project project
Install-Package IeuanWalker.StateButton
Then in the MauiProgram.cs, and the StateButton configuration method -
NuGet is in preview at the moment. There are several reasons its in preview -
There is a bug in MAUI preventing the StackLayout within the scrollview from filling the width, this means the breadcrumb doesnt animate in from outside the screen, more info here - dotnet/maui#9446
It's not fully accessible yet
I havnt tested iOS yet
Maui.Breadcrumb
This is a breadcrumb navigation control that is completely automatic and uses the Navigation stack to get the page titles to generate the breadcrumbs.
This library removes all visual effects from controls and makes them easy to style from portable layer instead of writing custom renderers always.
Xamarin.Forms.Plainer
This library removes all visual effects from controls and makes them easy to style from portable layer instead of writing custom renderers always
No underlines, no borders, no background colors. Just interactive fields without visual effect.
Getting Started on MAUI
Install Plainer.Maui nuget package to your project.
In this tutorial, we will learn how to create good looking side menu with custom animations in your #dotnetmaui apps. You can find the source code for this t...
A simple and good looking BMI Calculator created using #dotnetmaui. Source code available at: https://github.com/naweed/MauiBMICalculatorSubscribe to my chan...
youtube.com
Javier Codes
We all know Javier can make some beautiful apps, and if you don't then this is a great introduction. Chill out with some great music and just watch as Javier brings this design to life.
Composite Button with Activity Indicator
Pragnesh shows us how to make a button that has state and includes a spinner inside it. This is a good example of how you can compose controls to make custom UI experiences.
Themes
Chris shows us how to give the user various UI themes to choose from at runtime.
Draw/Copy Paths and Shapes to XAML
This is a great tip everyone should know. When your designer gives you a source file, you can often copy the shape data directly from the design tool, or you can crack open an SVG in a text editor and copy the data to XAML.
App Architecture
Naweed's MauiTubePlayer
This series of videos works through architectural design decisions we all need to make when implementing common functionality across an application.
[Turkish] Folder Structure
Bar Code Scanning
ZXing Library
Jonathan Dick (Redth) updated his popular library to .NET 6 and there's a preview on NuGet ready to use!
The successor to ZXing.Net.Mobile: barcode scanning and generation for .NET MAUI applications
Barcode Scanning
Install ZXing.Net.MAUI
Install ZXing.Net.MAUI NuGet package on your .NET MAUI application
Make sure to initialize the plugin first in your MauiProgram.cs, see below
// Add the using to the topusingZXing.Net.Maui;
// ... other code publicstaticMauiAppCreate()
{
varbuilder=MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.UseBarcodeReader(); // Make sure to add this linereturnbuilder.Build();
}
Now we just need to add the right permissions to our app metadata. Find below how to do that for each platform.
Android
For Android go to your AndroidManifest.xml file (under the Platforms\Android folder) and add the following permissions inside of the manifest node:
I added this myself to the .NET Point of Sale demo app, but cut it from the .NET Conf demo due to time. It's there and works if anyone wants to wire it up and polish the UI. :)
Other's have picked up on this feature and are showing off.