/Uno.Samples

A collection of code samples for the Uno Platform

Primary LanguageTSQLOtherNOASSERTION

Uno Platform Samples

This repository provides simple, to-the-point code samples for the Uno Platform.

See a complete list of code samples below. Some of the samples have accompanying step-by-step tutorials in the official Uno Platform documentation.

Pixel-Perfect. Multi-Platform. C# & Windows XAML. Today.

Twitter Followers PRs Welcome

What is the Uno Platform?

The Uno Platform is a UI Platform for building single-codebase applications for Windows, Web/WebAssembly, iOS, macOS, Android and Linux.

It allows C# and Windows XAML code to run on all target platforms, while allowing you control of every pixel. It comes with support for Fluent, Material and Cupertino design systems out of the box. Uno Platform implements a growing number of the UWP APIs, such as Windows.UI.Xaml, to enable UWP and WinUI applications to run on on all platforms with native performance.

Use the UWP/WinUI tooling from Windows in Visual Studio, such as XAML Hot Reload and C# Edit and Continue, build your application as much as possible on Windows, then validate that your application runs on iOS, Android, macOS and WebAssembly.

Visit our documentation for more details.

Samples

Android Custom Camera

An Android-specific sample that shows how to start a camera capture intent, and display the result in an Image control.

Browse source

Authentication with OpenID Connect (OIDC)

This sample application demonstrates the usage of the WebAuthenticationBroker in Uno with an OpenID Connect endpoint.

Browse source

Follow the tutorial

Auto-Suggest

An implementation of the XAML AutoSuggest control, showing how to autofill suggestions for user input.

Browse source

Benchmark

An implementation of the .NET Benchmark Control, a performance comparison tool.

Browse source

Camera Capture UI

A cross-platform implementation of the UWP CameraCaptureUI class that allows the user to capture audio, video, and photos from the device camera.

Browse source

Chat SignalR

Demonstrates the use of SignalR in an Uno Platform application.

Browse source

Control Library

An example of creating a custom control library and calling a control from your shared project.

Browse source

Dual-Screen

A simple example using the TwoPaneView control spanned across dual screens (such as Neo or Duo dual-screen devices for example).

Browse source

EmbeddedResources

An example that demonstrates the use of embedded resources and how to read them from your app. Note that the Default namespace property of all projects is the same in order for the embedded resource names to be the same on all platforms.

Browse source

FileSavePicker iOS

A working implementation of a folder-based save file picker for iOS. See the 'iOS' section in the Windows.Storage.Pickers Uno documentation for more information.

Browse source

HtmlControls

This is a WASM-only sample. It is creating native HTML elements that can be used directly in XAML.

Browse source

Localization Samples

A pair of samples related to localization:

Map Control

An implementation of the UWP Maps control with a custom slider that binds the value of the slider to the ZoomLevel property of the control.

Browse source

Native Frame Navigation

An example showcasing how to set up the native frame navigation for iOS and Android, and frame navigation in general for Uno.

Browse source

Follow the tutorial

Native Style Switch

An example of a toggle that allows you to switch between Native UI Controls and UWP UI Controls. The sample includes a checkbox, slider, button, and toggle.

Browse source

Package Resources

An example that demonstrates the use of package assets and how to read them from your app.

Note that for WebAssembly assets are downloaded on demand, as can be seen in the browser's network tab.

Browse source

SQLite

This is a simple standalone app demonstrating the use of SQLite in an Uno application, including WebAssembly. It uses Erik Sink's SQLitePCLRaw, and Frank Krueger's sqlite-net libraries.

Browse source

SkiaSharp Test

An example of the Uno implementation of SkiaSharp creating a basic canvas with text.

Browse source

Splash Screen Sample

An example showing how to set the splash/launch screen in Uno.

Browse source

Follow the tutorial

StatusBar Theme Color

An example showing how to adjust the StatusBar and CommandBar dynamically based on the current light/dark theme.

Browse source

Follow the tutorial

TheCatApiClient

An example demonstrating an approach to consuming REST web services in Uno using HttpClient.

Browse source

Follow the tutorial

TimeEntry

Code for the Silverlight migration tutorial.

Browse source

Follow the tutorial

ToyCar

A proof of concept of a car animation using the TwoPaneView control spanned across dual screens (such as Neo or Duo dual-screen devices for example). Inspiration from Justin Liu's demo app.

Browse source

UnoContoso

A port of Microsoft's Contoso Enterprise UWP app to Uno Platform, using Prism.

Browse source

Uno.Cupertino Sample

An example showing how to set up the Uno.Cupertino library.

Browse source

Follow the tutorial

Uno+Ethereum+Blockchain sample

A sample showing how to integrate smart contracts on the Ethereum blockchain with a multi-targeted Uno Platform application.

Browse source

Uno.Material Sample

An example showing how to set up the Uno.Material library.

Browse source

Follow the tutorial

WCT DataGrid

A dynamic grid view ported from the Windows Community Toolkit that allows for x:Bind.

Browse source

Follow the tutorial

WCT DataGrid, TreeView, TabView

A combined Windows Community Toolkit sample showing the DataGrid, TreeView, and TabView controls in action.

Browse source

WCT TabView

Ported from the Windows Community Toolkit, this sample shows an implementation of a TabViewItem in a shared container.

Browse source

WebRTC

Demo of the usage of WebRTC in Uno WebAssembly. This sample establishes a direct WebRTC connection between 2 browsers and uses it to send messages between peers.

Browse source

=======

Visit our documentation for more details.