Categories
.NET .NET 8 .NET 9 .NET MAUI Android Automation Blazor C# Desktop Developer General Getting Started Hybrid iOS macOS Mobile Preview Templates VS Code What's New Windows Xamarin Xamarin.Forms

Elevating .NET MAUI Item Templates: Simplified Namespace Resolution in Latest Release

Back in February, an article was published on the efficient utilization of Item Templates through the use of script automation. The article, titled .NET MAUI – Item Templates – Made Easy on CLI and VS Code, provides a detailed focus on this topic.

That article addressed two issues:

  • Better namespace resolution
  • Do more with fewer keystrokes

Now, the namespace resolution issue has been partially supported within the .NET SDK, eliminating the requirement for additional script files. A PR was submitted to the .NET Templating source repository, underwent review, and was subsequently merged into the main branch. This enhancement was then included in the release of .NET 9 Preview 6.

Categories
.NET .NET 8 .NET 9 .NET MAUI Android Automation Blazor C# Desktop Developer DevOps Extensions General Getting Started Hybrid iOS Mobile NuGet Templates Visual Studio VS Code Web What's New Windows Xamarin Xamarin.Forms

.NET MAUI All-in-One Templates Pack v5.6: NuGet CPM and Nightly Builds Support

Firstly, .NET MAUI 9 Preview 5 has just been released. The changelog can be found here. Notably, a new Blazor Hybrid Web template has been introduced in this version.

In short, this new template abstracts the Razor components into a distinct Razor Class Library (RCL). Furthermore, it provides the ability to create Blazor Web projects within the same solution and refers to the shared RCL.

The concept of abstracting the Razor components is already facilitated by the Hybrid project templates within the All-in-One template pack.

dotnet new mauiapp -o MyApp -dp Hybrid -rcl

Will review the modifications and cover them in a distinct article.

Categories
.NET .NET 8 .NET 9 .NET MAUI Android Blazor C# Code Desktop Developer General Hybrid iOS macOS Mobile Toolkit Web What's New Windows Xamarin Xamarin.Forms

Enhance Gesture Binding with the Shared Toolkit

The year 2024 began with an article outlining the improvements in the Shared Toolkit through the optimization of specifying the Binding as a LINQ expression, without requiring an additional getter or setter.

Mainly, the Binding expression is statically typed, providing better control by aiding in identifying errors during compilation. Furthermore, it preserves the default binding behavior of the View, such as the two-way binding in the case of Entry, enabling editing. This behavior can be modified using the BindingMode parameter.

Categories
.NET .NET 8 .NET 9 .NET MAUI Android Blazor C# Desktop Developer Extensions General Getting Started Hybrid iOS macOS Migration Mobile Templates Visual Studio VS Code Web What's New Windows Xamarin Xamarin.Forms

Enhancements in .NET MAUI All-in-One Project Templates

As we all know .NET MAUI is an evolution of Xamarin.Forms. The underlying architecture transitioned from Renderers to Handlers. The project structure is unified. But for the projects that are getting migrated and developers coming from Xamarin.Forms background would feel at home with the classic multi-project solution structure.

To effectively support this, the All-in-One project templates introduced an option to abstract the Shared components as a separate .NET MAUI Class Library.

Categories
.NET .NET 8 .NET 9 .NET MAUI Android Blazor C# Code Desktop Developer Embedding iOS macOS Maps Mobile Quick Fix Toolkit Web Windows Windows 11 WinUI 3 Xamarin Xamarin.Forms

.NET MAUI Community Toolkit Maps in WinUI 3 App

This article provides a comprehensive guide on leveraging the Maps feature from the .NET MAUI Community Toolkit in a WinUI 3 App through the robust Embedding feature.

The CommunityToolkit.Maui.Maps NuGet package provides access to Bing Maps through a WebView on Windows. The Handler definitions for the Windows platform for the .NET MAUI Maps feature are hosted in this package.

To ensure the Maps feature functions correctly on the native WinUI 3 App, it is imperative to slightly adjust the feature initialization in the MAUI pipeline.

Categories
.NET .NET 8 .NET 9 .NET MAUI Android Blazor C# Desktop Developer Hybrid iOS macOS Mobile Visual Studio VS Code Web Windows Windows 11 Xamarin Xamarin.Forms

Using WSA for .NET MAUI Android Development

Windows Subsystem for Androidā„¢ļø (WSA) enables your Windows 11 device to run Android applications.

Even though optimization techniques such as Intel HAXM are available, there is a marginal performance tradeoff when using the Android Emulator.

The Subsystem has been designed to function as an integral OS component, providing superior performance compared to the Android Emulator.

From my perspective, the only drawback of using WSA is the lack of support for Google Play Services (as it works with Amazon Appstore). So any apps that rely on those services, WSA might not be the best fit. So continue to use the Android Emulator or the Physical device.

Categories
.NET .NET 8 .NET 9 .NET MAUI Android Blazor C# Code Deep Dive Desktop Developer Embedding Hybrid iOS macOS Mobile Quick Fix Web Windows WinUI 3 Xamarin Xamarin.Forms

.NET MAUI – Native Embedding

The Native Embedding feature in .NET MAUI is a charming capability inherited from the legacy of Xamarin.Forms.

The platform project can make use of abstracted .NET MAUI pages and controls directly, showcasing its enhanced capabilities in this aspect.

To gain further insights, please consult my previous article outlining how to implement Blazor Hybrid in the WinUI 3 project.

When compared with the time of Xamarin.Forms, significant progress has been made in the implementation of this feature, such as the definition of a platform-independent extension method called ToPlatform().

Categories
.NET .NET MAUI Android Blazor C# Desktop Developer DevOps Getting Started Hybrid iOS macOS Mobile Visual Studio VS Code Web Windows Xamarin Xamarin.Forms

Using Visual Studio Code for .NET MAUI Development

In August 2023, Microsoft made an official announcement regarding the retirement of Visual Studio for Mac, scheduled to take place by August 31, 2024 (in another 6 months), as stated in a blog post here.

In the same blog post, Visual Studio Code along with the C# Dev Kit is projected as a viable alternative for cross-platform .NET development. For further information on the C# Dev Kit, refer to this article.

And for .NET MAUI too, there’s an officially supported extension hosted on VS Marketplace. To know more about this, take a look at this article. C# Dev Kit is a dependency for this .NET MAUI extension.

In light of the recent announcements, the article has been updated to incorporate info on support for JetBrains Rider IDE at the conclusion.

Categories
.NET .NET 8 .NET MAUI Android Blazor C# Desktop Developer DevOps Hybrid iOS macOS Mobile Templates Windows Xamarin Xamarin.Forms

.NET MAUI – Nightly Builds

At first, .NET 6 and .NET 7 versions of .NET MAUI were released only via SDK Workloads whereas from .NET 8 onwards (Preview 4 to be precise), it is now distributed as a base workload and suite of NuGet packages on top of it.

This NuGet-based release process allows trying different versions of .NET MAUI which are released on top of a base workload on the same machine without the complexities of moving between different workload versions.

Categories
.NET .NET 8 .NET 9 .NET MAUI Android Blazor C# Desktop Developer F# Getting Started Hybrid iOS macOS Mobile NuGet Templates Visual Studio Web Windows Xamarin Xamarin.Forms

.NET MAUI on .NET 9

Last Tuesday, the first preview of .NET 9, an STS release, was released along with Visual Studio 2022 17.10 Preview 1.0

Nov 2024 Update: An article has already been published detailing theĀ comprehensive features of .NET MAUI 9.

A detailed blog post describing the Vision for .NET 9 is here. Moving forward, preview releases will be published in the GitHub discussion and for Preview 1 here.

And what’s changed in this .NET MAUI 9 Preview 1 is here. Have a look at the tentatively planned features on .NET 9 here and Roadmap here.

.NET 9 Preview 2 is available now: