Restyling Controls in an Uno (Windows UI) Application

In my previous post, Multi-Platform PixelPerfect UI with Windows UI and the Uno Platform, I demonstrated how applications built using Project Reunion (i.e. Windows UI), coupled with the Uno Platform, could deliver an identical user experience across a variety of platforms. In this post I’m going to walk through changing the style of one of … 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

Windows 10X Launch Plans Leave Developers Confused

Here’s the upshot – if you’ve been watching the Windows developer space, the hot topic at the moment is Project Reunion, which includes Windows UI and will form the building blocks for apps targeting the Windows platform going forward. And then there’s Windows 10X (“10X“), Microsoft’s latest attempt at a cut down version of the … 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

Converting Xamarin.Forms to WindowsUI and Uno: StackLayout v StackPanel

When moving from Xamarin.Forms across to WinUI, one of the simpler changes to make is to switch out StackLayout for StackPanel. Or so you’d think – unfortunately StackLayout has some quirky behaviour that needs some extra handling to get right. In this post we’ll look at why the StackPanel replacement doesn’t always work, and what … Read more

Windows UI (WinUI) 3 Preview 5 and Project Reunion 0.5 preview – Upgrade today

Ok, just a quick summary post – Windows UI 3.0 and Project Reunion 0.5 preview has just shipped. The most notable change is that WinUI now falls under Project Reunion with changes to namespace, packages and the Visual Studio extension. Installation Here’s a quick summary of getting the latest bits: Start by removing the WinUI3 … Read more

Converting Xamarin.Forms to WindowsUI and Uno: SafeArea to VisibleBoundsPadding

Converting a Xamarin.Forms application across to use WinUI + Uno is mostly straight forward as a lot of the XAML is either the same, or has an equivalent. When you’re dealing with platform specifics, one thing you might come across is the SetUseSafeArea call. For example: The Uno platform exposes the concept of safe area … 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

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

Colors, Styles and Templates in UWP, Windows UI (WinUI) and the Windows App Sdk (WinAppSdk)

This is a quick post just to provide a reference point for anyone who’s looking for the default styles, templates, colors etc for Windows UI. Let’s break this down a bit: UWP Let’s start with the current technology, UWP. If you want to inspect the default styles and templates for UWP controls, you just need … 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