Comparing MVVM and MVUX for building a Multi-Platform Application using .NET, C# and XAML with the Uno Platform

The purpose of this post is two fold, firstly to provide an introduction to Model-View-Update-eXtended (MVUX), as developed by the Uno Platform, and secondly to provide a comparison to the more traditional Model-View-ViewModel (MVVM) approach to building XAML-based applications. In order to do this, we’ll first walk through building a simple MVVM based application where … Read more

Enhancing .NET Hot Reload with CreateNewOnMetadataUpdate, MetadataUpdateHandler and MetadataUpdateOriginalType Attributes

With each update to the .NET SDK and Visual Studio the support for Hot Reload improves. Hot Reload is the ability to make changes to your running application without having to restart and it can dramatically improve developer productivity, when it works. In this post we’re going to look at a simple example of where … Read more

Implementing WinUI/Fluent into Visual Studio

As Windows, continues to apply the Fluent design language across various aspects of the underlying operating system, Microsoft is also looking to apply it to other first party applications. According to this post on their blog, Visual Studio is the next application to be hit by designers and not everyone is happy (check out comments … Read more

VisualTransition and State Animations in WinUI and the Windows App SDK

One of the things that sets WinUI apart from other UI frameworks is that provides a declarative way to define visual states for a control or a page. It also allows for the transitions between states to be defined. In this post we’re going to cover how to define both transitions and state animations and … Read more

Deep dive – Uno Platform Template Wizard – Extensions, Application and Theme

This is the last post in the sequence talking about the new wizard that’s available for creating multi-platform applications with .NET and the Windows App SDK (WinUI), leveraging the Uno Platform (previously here, here, here and here). In this post we’ll look at the last three sections: Extensions, Application and Theme. Extensions The Extensions section is broken down into … Read more

Deep dive – Uno Platform Template Wizard – Projects, Testing and Features

This is the next post in the sequence talking about the new wizard that’s available for creating multi-platform applications with .NET and the Windows App SDK (WinUI), leveraging the Uno Platform (previously here, here and here). In this post we’ll look at the next three sections: Projects, Testing and Features. Projects In addition to the target … Read more

Deep dive – Uno Platform Template Wizard – Framework, Platforms and Presentation

In my previous two posts (here and here) I’ve talked about the new wizard that’s available for creating multi-platform applications with .NET and the Windows App SDK (WinUI), leveraging the Uno Platform. Now we’re going to jump in and take a look at the options that are available via the Customize button. In this post … Read more

Exploring the Uno Platform Visual Studio Wizard for Creating Apps for the Windows App SDK (WinUI), iOS, Android, Mac, Linux and Web

In my previous post on Creating Cross-Platform/Multi-Platform .NET Applications with Windows App SDK (WinUI) and the Uno Platform, I gave a quick introduction to the Visual Studio wizard for creating an Uno Platform application. In this post we’re going to look at using the Default (or recommended) preset configuration and an overview of some of … Read more

Creating Cross-Platform/Multi-Platform .NET Applications with Windows App SDK (WinUI) and the Uno Platform

There are two main options for building applications in .NET and leverage the Windows App SDK, that target multiple platforms (aka cross-platform or multi-platform applications) with is Microsoft’s .NET MAUI and the Uno Platform. Before everyone jumps up and down that I’ve missed Avalonia UI, they don’t fit in this category because they don’t leverage … Read more

How to Disable Individual GridView and ListView Items in a XAML Application (WinUI + Uno Platform)

One of the most significant aspects of the XAML based applications is the concept of lookless controls. I’ve covered this topic a bit in the past but in summary it means that controls can be restyled without changing the behaviour. The Windows App SDK and the Uno Platform provide out of the box styles for … Read more

Adding Windows 11 Widgets to a UWP Application

With the recent release of v1.2 of the Windows App SDK came support for developing third party widgets for Windows 11. What’s not immediately obvious from the documentation is that you don’t have to be using Windows UI (WinUI), or even the Windows App SDK, for your application. In this post we’re going to add … Read more

Adding a Windows Widget to a C# Windows App SDK (Windows UI) App

Microsoft just shipped v1.2 of the Windows App SDK, which includes support for creating third-party Widgets for Windows. During the previews, it was understood that there was a limitation that the widget provider (i.e. the functionality of the widget) needs to be developed using C++. However, this changed and the final release included support for … Read more

Dotnet (.NET) Performance Tracing for WinUI, Uno and Maui Applications

With the transition from UWP to WinUI and from Xamarin iOS/Android to .NET for iOS and Android, we’re seeing the convergence of application development in the .NET ecosystem. This convergence shouldn’t be undervalued and is particularly evident when you realised that all of these once disparate platforms, can now take advantage of the common tooling … Read more

Simplify NuGet Package Versions in your application with Central Package Management

A common problem for multi-project applications, frameworks or libraries is how to manage the versions of NuGet package that are referenced. Often packages will be updated in one project but not others, leading to a state of confusion, particularly if one of the packages causes issuse, or there are incompatibilities between versions. In this post … Read more

Fixing Broken DefaultButtonStyle in Windows UI (WinUI) / WinAppSdk

In writing my previous post on Implicit and Explicit Styles in XAML I was reminded of a bug in the definition of the DefaultButtonStyle which prevents you setting the Foreground colour of a Button. The issue is documented, along with the fix, in this issue but for whatever reason (and I can’t think of one … Read more

Visual Studio: How to Pair to Mac for iOS Development on Windows

I have to start this post by pointing out what a major bonus it is for .NET developers that you can build, deploy and debug an iOS application on Windows – that’s right, if you didn’t already know this, if you’re using Xamarin (now net6 ios/android), Xamarin.Forms (now dotnetmaui) or Uno Platform, you can do … Read more