Welcome to the Sands of MAUI—newsletter-style issues dedicated to bringing together latest .NET MAUI content relevant to developers.
A particle of sand—tiny and innocuous. But put a lot of sand particles together and we have something big—a force to reckon with. It is the smallest grains of sand that often add up to form massive beaches, dunes and deserts.
Most .NET developers are excited with .NET Multi-platform App UI (MAUI)—the evolution of modern .NET cross-platform developer experience. Going forward, developers should have much more confidence in the technology stack and tools as .NET MAUI empowers native cross-platform solutions on both mobile and desktop.
While it may take a long flight to reach the sands of MAUI island, developer excitement around .NET MAUI is quite palpable in all the shared content. Like the grains of sand, every piece of news/article/documentation/video/tutorial/livestream contributes towards developer knowledge in .NET MAUI and we grow a community/ecosystem willing to learn & help.
Sands of MAUI is a humble attempt to collect all the .NET MAUI awesomeness in one place. Here's what is noteworthy for the week of September 26, 2022:
The next milestone in the evolution of .NET is .NET 7, scheduled to be generally available in November 2022. After several preview versions, .NET 7 recently hit the Release Candidate (RC) status with .NET 7 RC1 available for production usage. .NET MAUI has big plans for .NET 7 and the first iteration is now available—David Ortinau wrote up the announcement introducing .NET MAUI for .NET 7 RC1.
The .NET MAUI update for .NET 7 RC1 is available with the release of Visual Studio 17.4 Preview 2.1, with the goal of overall quality and stability improvement across the toolchain. Native Map integration and DualScreen support join .NET MAUI in .NET 7 to fill two gaps for mobile developers upgrading from Xamarin. Desktop gets a lot of love in .NET MAUI for .NET 7 RC1, with features like tooltips, right-click, hover, window size and context menus.
.NET 7 support in .NET MAUI is welcome news and moving forward, .NET MAUI major releases will align with .NET versions—the future of cross-platform development with .NET is looking good.
With the upcoming .NET 7 release, .NET MAUI would be aiming to fulfill its promise of being the next-generation .NET cross-platform strategy—tooling would be solid for developers on both Windows and MacOS. The excitement to have .NET MAUI running on .NET 7 RC1 is palpable and James Montemagno did a live stream exploring the latest .NET MAUI build for .NET 7.
James started out digging through the .NET MAUI for .NET 7 RC1 announcement blog post—the list of features is impressive indeed. James has built up a nice skeleton architecture for a conference app with speaker/session details—the .NET 6 app just runs with .NET 7 bits by changing up the TargetFrameworks! James was quick to dive into the next exciting thing in .NET MAUI for .NET 7 RC1—the new glorious Maps.
With a little configuration on iOS/Android, platform integrated Maps show up in .NET MAUI apps—this is going to enable so many developer scenarios involving geolocation, pins, routes and more. Together with desktop-friendly features and tighter platform integration, .NET MAUI is shaping up nicely for the future with .NET 7.
Mobile apps may have beautiful UI, but nothing says attention to detail more than when apps own the device status bar and customize it for optimum UX. Status bars in iOS and Android occupy the top part of the screen that shows various system information, indicators and notifications. Customizing the status bar can have a big impact with app UX and thankfully it is easy for developers to pull off—Gerald Versluis produced a video on how to change status bar colors with .NET MAUI.
With the latest .NET MAUI Community Toolkit, customizing the status bar in iOS/Android is a piece of cake using the built-in StatusBarBehavior. Gerald starts off bringing in the .NET MAUI Community Toolkit NuGet package and adding StatusBarBehavior to a page—developers can customize the status bar color as well as the style with light/dark content. Additionally, StatusBarBehavior has full support for MVVM patterns and data bindings—developers can drive the status bar UX as per changing needs/settings.
Developers will have to add info.plist key-value pairs for iOS or tweak primary colors for Android style—but the bottom line is status bar UX is completely customizable per app needs while honoring light/dark modes. Mobile developers often wonder about device status bar customization within apps—now we all know, thanks to Gerald.
.NET developers may remember the last .NET Conf event—.NET Conf Focus on MAUI was a one-day extravaganza in early August for all things .NET MAUI. Speakers from all around the world shared their passion for .NET MAUI topics and developers' excitement was palpable. Let's do a flashback to one of the best sessions @ .NET Conf Focus on MAUI—Daniel Roth talking Blazor Hybrid apps with .NET MAUI.
Dan started off with a Blazor refresher—the beloved UI framework allowing .NET developers to write C#/.NET front and back for modern web apps. Blazor's component model for web can now power native mobile and desktop apps with the new Blazor Hybrid hosting model, thanks to .NET MAUI.
Blazor and .NET MAUI were meant to be paired together—everything is local and running on the shared .NET runtime. The huge benefit is code sharing—developers can now reuse Blazor components and styles meant for the web, now on native mobile/desktop apps. Blazor code running inside .NET MAUI apps have full access to device capabilities and platform APIs—so developers can pull off all types of native integrations from Blazor components.
Dan went on to show off some cool demos with Blazor Hybrid and .NET MAUI, wrapping things off with the showcase .NET Podcast app—this is a great starting point for anyone looking to get started with Blazor powering mobile/desktop apps while sharing code with web apps.
Developers might build gorgeous apps, but guess what fuels a lot of enterprise workflows? Yes, reports. Reporting is key to visualize huge amounts of data—it's the only way to find trends and statistics in data that would otherwise be impossible to see.
Telerik Reporting is the turnkey .NET Reporting solution, allowing developers/end users the freedom to design, develop and deliver polished reports from any data source. And reports can be viewed/delivered across web, desktop and mobile platforms—and Telerik Reporting is now welcome on .NET MAUI apps.
The first step to serve up Telerik Reports is a REST service—can be hosted on .NET Framework or .NET Core forward. A popular way to view the reports is the HTML5 Report Viewer, which is embeddable in most web apps. With .NET MAUI offering a modern WebView, the HTML5 Report Viewer can embedded inside a cross-platform mobile/desktop app—complete with scripting/styling code that can pull down and display reports.
The latest release of Telerik Reporting also includes a native Blazor Report Viewer—making things friendlier to Blazor component developers with Razor syntax. Developers can now start up a Blazor Hybrid .NET MAUI app and embed the native Blazor Report Viewer inside a Blazor component—behold, Telerik Reports render with full fidelity inside the BlazorWebView component.
However developers prefer to render, the bottom line is reporting in .NET MAUI apps—done and done.
That's it for now.
We'll see you next week with more awesome content relevant to .NET MAUI.
Sam Basu is a technologist, author, speaker, Microsoft MVP, gadget-lover and Progress Developer Advocate for Telerik products. With a long developer background, he now spends much of his time advocating modern web/mobile/cloud development platforms on Microsoft/Telerik technology stacks. His spare times call for travel, fast cars, cricket and culinary adventures with the family. You can find him on the internet.
Subscribe to be the first to get our expert-written articles and tutorials for developers!
All fields are required