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

I am a Windows App Developer

With the recent excitement surrounding the announcement of Windows 11, there’s renewed interest in developing apps for the Windows platform. In this post we’re going to celebrate what it means to be a Windows App Developer, regardless of what framework or technology you chose. It’s not going to be an exhaustive list of options but … Read more

Image Resizetizer for WinUI and Uno Applications

Whilst I was working on migrating the WeatherTwentyOne app from Maui to Uno I noticed that the Maui application includes a number images as SVG files. However, in the XAML there are only ever references to PNG files. On closer inspection of the bin folder for the WinUI project I noticed that for each SVG … Read more

Multi-Platform PixelPerfect UI with Windows UI and the Uno Platform

As we progress through the various previews of .NET 6 it’s great to see the transition happening from Xamarin.Forms to dotnet MAUI. The other day, James Montemagno tweeted out an image that showcases the same application running on iOS, Android, MacOS and Windows (which is now based on WinUI Desktop!). This tweet inspired me to … Read more

Getting Started with the Uno Platform (Project Reunion/WinUI)

Two years ago I posted on Getting Started with Platform Uno which focused on starting with a UWP application and extending it cross platform using the Uno Platform. For those tracking developments in the Windows development space, you’ll be aware that the 0.5 version of Project Reunion has just been released. It seem fitting to … Read more

Naming, Versioning and Releasing Project Reunion and Windows UI

As the first release of Windows UI 3.0 is imminent, there’s a bit of a dialogue going on about its relationship with the parent project, Project Reunion. More specifically the conversations focus on topics like naming, versioning and release planning. In this post I’m going to touch on these topics and provide my thoughts on … Read more

A Vision for the Windows Developer Platform

Last month I posted on Building a Roadmap for Windows Development, where I discussed some of the components that need to come together in a coherent manner for the Windows developer platform of the future. These included things like running in the Windows App Container and the app having an Identity. In this post I’ll … Read more

Simple WinUI + Uno Calculator

A week or so ago David from the XF/Maui team kicked of a thread on twitter challenging devs to add a simple addition to a simple calculator. I particularly liked the transition animation that Robin added, so figured I’d translate this to a WinUI+Uno platform application. I’m going to try to keep as close to … Read more

Breaking a Developer Ecosystem by Changing a Namespace

The next 6-12 months are going to be super exciting with both preview and releases planned for WinUI, Project Reunion and Maui (aka Xamarin.Forms). WinUI/Reunion represent a significant decoupling for Windows apps from the underlying OS version. Meanwhile Maui will provide a bit of a reset for Xamarin.Forms which some major improvements to the way … Read more

Building a Roadmap for Windows Development

If you’re a developer that builds apps using .NET for Windows you’ll be familiar with Microsoft’s attempts to deliver a better developer story. Unfortunately this usually involves learning a new, typically under-baked, technology that in theory will make it easy to deliver better apps for Windows. Whether this was the jump from WinForms to WPF … Read more

Using ImageSharp in your WinUI – Uno Cross Platform App

ImageSharp WinUI Uno

This post originated from a tweet demonstrating how easily you can use the ImageSharp library in a Blazor server side app to generate images. In this post I’ll show how we can reuse the same code plus WinUI+Uno to generate images for iOS, Android, Windows (Desktop+UWP) and Web (WASM) I figured it’d be easy enough … Read more

WinUI 3.0 Misconceptions

Recently I came across a twitter thread talking about WinUI 3.0 (WinUI3) and how it failed to live up to expectations. Hopefully @JaykeBirdCoding won’t mind me going through his tweets and providing my thoughts – if you get value out of this analysis, please make sure you go follow @JaykeBirdCoding! For anyone else out there … Read more

Unpackaged Windows Apps with Identity using a Sparse Package

In my previous post I made a passing reference to the use of sparse packages to allow unpackaged Windows applications to acquire an identity. In this post we’re going to walk through creating a sparse package and attaching it to an unpackaged Windows application. Before we get into it I want to link to a … Read more

Trust, Identity and AppContainer for Windows Apps

Following my previous post where I explored different packaging options for Win32 and UWP apps, I realised that there are some options I didn’t mention. In this post I’m going to provide a very quick summary of the options I’ve come across and how they define the running context of an app. Here goes…. Vanilla … Read more

Combining .NET 5, WinUI, UWP – FullTrust, PartialTrust, WindowsAppContainer

As Microsoft progresses towards the first release of WinUI3 and in parallel invests into Project Reunion, the gap between Win32 based applications (eg WinForms, WPF) and UWP applications is being eroded. In this post we’re going to look at the role of trust, identity, capabilities and the Windows App Container, and how they relate to … Read more

Missing Files in Multi-Targeted Project

In the .NET ecosystem there have been a number of different approaches to building libraries that work cross platform (i.e. support building apps for different platforms such as iOS, Android, Windows etc). One of the more recent is to build a multi-targeted project that can light up either different features or just different implementations for … Read more

Windows Packages (APPX, MSIX etc) are a Band-Aid Solution

The Windows platform supports a number of different development frameworks (WinForms, WPF, UWP etc) and a number of different deployment models (xcopy, appx, msix etc). In this post we’re going to take a look at why the current trend for packaging Windows applications is a stop-gap, a temporary solution to the problem of application management … Read more