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

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

The Future of Multi-Platform .NET Application Development with WinUI, Net6 and the Uno Platform

In my previous post I started a series talking about using the Uno.Extensions that the Uno Platform team have been working on. This post was supposed to be a follow-on post but instead I want to recap one of the topics in the previous post. In case you missed the announcement, version 4.3 of the … Read more

Add Uno.Extensions to a WinUI Multi-Platform Uno Application

This post will be the first in a series of posts talking about Uno.Extensions, a set of libraries that the Uno team have been working on to simplify common application scenarios and make it quicker and easier to build robust multi-platform applications using the Uno Platform. The source code for this post, and subsequent posts … Read more

Styling Controls for Windows Apps

One of the things that we take for granted when using applications that have been designed for Windows is the subtle cues that exist for when you’re using the mouse and/or keyboards. For example when you mouse over a button, or an item in a list, the background color changes slightly. Similarly when you use … Read more

Xamarin.Forms, .NET Maui and the Uno Platform

The .NET Maui team at Microsoft recently dropped Release Candidate 1, so I thought it worth taking a quick look at how it compares to both it’s predecessor, Xamarin.Forms, and the Uno Platform, which is arguably the market leader for building multi-platform application with .NET. If you missed the announcement by Microsoft, here’s a tweet … Read more

UI Testing for WASM (WebAssembly) with the Uno Platform

One of the guilty truths of software development is that despite our best efforts we never write enough tests, and seldom do we write enough automated tests. This isn’t entirely our fault because for some reason testing frameworks, particularly those for UI testing, always seem to be an after thought. In this post we’re going … Read more

Packaged, Unpackaged and Self-Contained WinUI 3 Apps with the Windows App Sdk

As we get progressively closer to the v1 release of the Windows App Sdk I thought it worth looking into the different deployment/packaging options you have. In this post we’re going to look at the startup logic for a WinUI 3 Desktop application and discuss how this relates to the different packaging options that are … Read more

Using the Windows App SDK Resource Manager (MRT Core) in Unpackaged Win32 (WinForms/WPF) App.

As a UWP developer I relied heavily on the framework to deal with managing application resources such as images and string literals. You might think this is quite simple as images are just files that are packaged with your app and strings can just be put in a constants file. Where this all gets complicated … Read more

Building a XAML UserControl for WinUI, UWP, WPF or Xamarin.Forms (.NET MAUI)

One of the powerful aspects of any XAML platform is the ability to define your own controls. In this post we’re going to look at building a user control that allows you to reuse chunks of your user experience. It doesn’t matter whether you’re using UWP, WinUI, Xamarin.Forms (.NET Maui) or the Uno Platform, the … Read more

Windows 11 and the Windows App SDK

Last night / this morning I sat through one of the most professional and well executed series of non-live presentations from Microsoft covering Windows 11 and all the great features / tools that are coming for developers. In this post I’m going to cover some of the points that I took away from the sessions, … Read more

Nuget Package Explorer (nuget.info) is a PWA powered by Uno Platform

As a true demonstration of the capabilities of the Uno Platform the Nuget Package Explorer (source on GitHub / Microsoft Store) is now available at https://nuget.info. For more information read the announcement. One thing that’s not immediately obvious is that https://nuget.info is in fact a PWA. In Edge (and Chrome) you should see an icon … Read more

Visual Designer, Hot Reload and Beyond

In the last couple of years we’ve seen a massive spike in interest around “Hot Reload” thanks to the popularity of frameworks such as React/React Native and more recently, Flutter. The goal of Hot Reload is to allow developers to iteratively change their application code, whilst debugging their application – this cuts down considerably the … Read more

We Don’t Want or Need WinUI for UWP

There are a bunch of loyal UWP developers that are complaining because Project Reunion / WinUI isn’t available for UWP but have they really taken a step back and understood what they’re asking for. Let’s break this down a little and understand why WinUI for UWP shouldn’t exist (and why there are political reasons why … Read more

How to run a WinUI 3 (Project Reunion) app on Windows 10X (Xbox and Hololens)

If you look at what Microsoft is working on with Project Reunion, it’s clear to see that they’ve set a vision to reunite the various groups of Windows developers. The aim is not to have every developer using exactly the same technology stack but rather to give every developer access to the richness of the … Read more

Async Support for Executing Storyboards in UWP and WinUI

Sometimes I forget just how old and dated XAML is, and how little advances Microsoft has made to make it easy to work with. With the move to WinUI, hopefully we’ll start to see some much needed improvements – we’ve seen some already with the ability to define row and column definitions as a single … Read more

Start and Restart Windows (UWP/WinUI) Applications on Windows Startup

A while ago Windows introduced a little-known feature that allows applications to automatically restart when Windows is restarted. However, rather than just look at this feature, which Windows app developer get for free, in this post we’re going to look at different options for starting and restarting a Windows application when Windows starts/restarts. Launch on … Read more