This was a big week for .NET MAUI content, starting with .NET Conf: MAUI! We had a great time bringing your a wide range of .NET MAUI content from our studio in Redmond and speakers around the globe.
Table of Contents:
.NET Conf: MAUI
If you only watch one session, I shamelessly must recommend my keynote presentation with Maddy Montaquila.
The rest of the 24 sessions are nicely catalogued at https://docs.microsoft.com/events/dotnetconf-focus-on-maui/.
Books
Michael Stonis from EightBot has written Enterprise Application Patterns with .NET MAUI and updated the companion eShop application to go with it.
dotnet-architecture / eshop-mobile-client
eShop mobile & desktop client built with .NET MAUI
eshop-mobile-client
eShop sample applications have been updated and moved to https://github.com/dotnet/eShop. Active development will continue there.
eshop-mobile-client
is a reference .NET MAUI multi-platform client app whose imagined purpose is to serve the mobile workforce of a fictitious company that sells products. The app allows you to manage the catalog, view products, and manage the basket and the orders.
Dependencies
Though eshop-mobile-client
mobile app relies on the repo eShopOnContainers for its backend but by default it uses its internal MockServices for all its functionalities. For more details refer to the Setup section.
Architecture
The app architecture consists of two parts:
- A .NET MAUI mobile app for iOS, macOS, Android, and Windows.
- Several .NET Web API microservices are deployed as Docker containers.
.NET MAUI App
This project exercises the following platforms, frameworks, and features:
- .NET MAUI
- XAML
- Behaviors
- Bindings
- Converters
- Central Styles
- Animations
- IoC
- Messaging Center
- Custom Controls
- xUnit Tests
- Azureβ¦
Libraries
InfiniteScroll
This is a port of Matthew Liebowitz's Xamarin.Forms library that adds this behavior to ListView.
https://www.nuget.org/packages/TheSalLab.MauiInfiniteScrolling
Scandit Barcode Scanning
Scandit has updated their Xamarin.Forms library for .NET 6.
https://www.nuget.org/packages/Scandit.DataCapture.Core.Xamarin.Forms/6.14.0-beta.2#readme-body-tab
LiveCharts
James Montemagno turned me on to this SkiaSharp based charting library last week at .NET Conf, and I really want to check it out.
https://www.nuget.org/packages/LiveChartsCore.SkiaSharpView.Maui/2.0.0-beta.350
KeyboardHookLite
I'm stoked for this library that enables a global keyboard listener! This is a common need I have in desktop applications. Right now it only appears to work with Windows.
https://www.nuget.org/packages/KeyboardHookLite
ZXing Barcode Scanner
Our fearless leader Redth has published a .NET MAUI version of his popular barcode scanning library ZXing. It's primarily for mobile, so the Windows bit is just enough to not crash which is perfect me most of our needs.
If you're poking around in the Point of Sale demo I made for .NET Conf, you'll find this put to use. :)
https://www.nuget.org/packages/ZXing.Net.Maui/
ContextMenuContainer
While the official .NET 7 roadmap includes a ContextMenu, you don't need to wait. This library has support for all 4 .NET MAUI platforms today.
https://www.nuget.org/packages/ContextMenuContainer/1.1.0.2-preview#readme-body-tab
Videos
A Better Pub/Sub Messenger
James brings us a quick rundown on using the new Messenger in CommunityToolkit.Mvvm, and I love it! It reminds me a lot of TinyMessenger.
UI Design for .NET MAUI
Leomaris Reyes provides some great tips for honing your skills to create beautiful UI with .NET MAUI.
Webinar: Create a Shopping UI with .NET MAUI and sqlite
Roulette Game
Nice, simple example of animation.
https://github.com/kei-soft/KJunBlog/tree/master/Maui.RouletteGame
Everything you need to know about CollectionView
Drawing Graphics Controls
Chris makes it sound so easy, and I suspect it is!
iOS App Extensions
DrawingView
Gerald introduces you to this powerful, new control for drawing things in .NET MAUI.
Top comments (3)
Apart from being 20 years late to the party and the history of Microsoft never finishing a single desktop offering other than unmanaged C++. Is this really going to mend the fractured desktop offerings for Windows? Then to claim it's good for Linux, Android and IOS isn't that a bit over the top? I'm skeptical. Trusting them after what they did to WPF is still hard for many of us. Thoughts? Ramp up time?
I have read about what .Net MAUI offers from its official doc. But then I paused when I read about the supported platforms as stated in the following :
"NET Multi-platform App UI (.NET MAUI) apps can be written for the following platforms:
My question is :
Can we develop Android app with this new tech using Windows 7 ? It seems that the answer is no, considering it uses the same libraries that also targets on Win 10/11. But I need confirmation.
I can't wait to get my hands dirty with this tool. I'm dropping WPF.
Nice work guys.