Pixel-Perfekt. Multiplattform. C# und Windows-XAML. Heute.
Was ist die Uno-Plattform?
Die Uno-Plattform ist eine Open-Source-Plattform für die schnelle Erstellung nativer Mobil-, Web-, Desktop- und eingebetteter Apps mit einer einzigen Codebasis.
Es ermöglicht die Ausführung von C#- und WinUI-XAML- und/oder C#-Code auf allen Zielplattformen und ermöglicht Ihnen gleichzeitig die Kontrolle über jedes Pixel. Es bietet standardmäßige Unterstützung für die Designsysteme Fluent, Material und Cupertino. Uno Platform implementiert eine wachsende Anzahl der WinRT- und WinUI-APIs, wie z. B. Microsoft.UI.Xaml , um die Ausführung von WinUI-Anwendungen auf allen Plattformen mit nativer Leistung zu ermöglichen.
Verwenden Sie die WinUI-Tools von Windows in Visual Studio, z. B. XAML Hot Reload und C# Hot Reload, erstellen Sie Ihre Anwendung so weit wie möglich unter Windows und überprüfen Sie dann, ob Ihre Anwendung unter iOS, Android, macOS und WebAssembly ausgeführt wird.
Weitere Informationen finden Sie in unserer Dokumentation.
Erste Schritte
Sehen Sie sich die vollständigen „Erste Schritte“-Anleitungen für den Einstieg in Visual Studio, Visual Studio Code oder JetBrains Rider an.
Für ein größeres Beispiel und eine Funktionsdemo:
- Besuchen Sie das Uno Gallery-Repository.
- Probieren Sie den WebAssembly Uno Playground live in Ihrem Browser aus.
Funktionen der Uno-Plattform
- Unterstützte Plattformen:
- Windows 10 und Windows 11
- Windows 7 (über Skia Desktop)
- iOS, MacOS (Catalyst) und Android (über .NET)
- WebAssembly über das .NET Runtime WebAssembly SDK
- Linux (über Skia Desktop mit X11 und FrameBuffer)
- macOS (über Skia Desktop)
- Entwicklungsschleife:
- Entwickeln Sie zunächst unter Windows mit Visual Studio
- XAML Hot Reload für die Live-XAML-Edition bei jedem Tastendruck
- C# Hot Reload unter Windows (VS2022/Rider/VS Code), Linux und macOS (VS Code/Rider)
- Validieren Sie so spät wie möglich auf anderen Plattformen
- Entwickeln Sie in VS Code, Rider, Codespaces oder GitPod
- XAML und/oder C# Hot Reload für WebAssembly, Linux, iOS und Android
- Uno.UITest, eine Bibliothek zum Erstellen plattformübergreifender UI-Tests für WebAssembly, iOS und Android.
- Plattformübergreifende Steuerung:
- Kontrollvorlagen
- Datenvorlage
- Styling
- Reichhaltige Animationen
- Unterstützung für WinUI/UWP-Code:
- Windows Community Toolkit
- Windows Community Toolkit (Uno Fork)
- Community-Toolkit MVVM
- Microsoft XAML-Verhalten
- Prisma
- SkiaSharp
- SkiaSharp.Extended
- ReactiveUI-Beamter
- WindowsStateTriggers
- Rx.NET
- ColorCode-Universal
- LibVLCSharp
- MapsUI
- LiveCharts
- Jedes UWP-Projekt
- Responsives Design:
- Visueller Zustandsmanager
- Zustandsauslöser
- Adaptive Trigger
- Plattformspezifisch:
- Native Steuerelemente und Eigenschaften über bedingtes XAML
- Jede der vorhandenen verfügbaren Xamarin iOS/Android-Bibliotheken
- Xamarin.Forms-Renderer:
- Uno Platform WebAssembly-Renderer für Xamarin.Forms
Live-WebAssembly-Apps
Hier ist eine Liste von Live-Apps, die mit der Uno-Plattform für WebAssembly erstellt wurden.
- Der Uno-Plattform-Spielplatz (Quelle).
- Die Uno-Galerie demonstriert die Verwendung von Fluent- und Material-Richtlinien.
- Der NuGet-Paket-Explorer (Quelle).
- Der Uno-Rechner, eine einfache, aber leistungsstarke iOS/Android/WebAssembly C#-Portierung des Rechners, der mit Windows geliefert wird (Quelle). Probieren Sie auch die iOS-Version, die Android-Version und die Linux-Version aus.
- Die Community Toolkit Labs-App
- SkiaSharp-Fork für die Uno-Plattform. Skia ist eine plattformübergreifende 2D-Grafik-API für .NET-Plattformen, die auf der Skia-Grafikbibliothek von Google basiert (Quelle).
- Das Uno.WindowsCommunityToolkit (Quelle).
- Der Uno.RoslynQuoter, ein Roslyn-basiertes C#-Analysetool (Quelle).
- Die SQLite + Entity Framework Core App, eine Demo der Kombination von Roslyn, Entity Framework Core, SQLite und der Uno-Plattform zur Bearbeitung einer browserinternen Datenbank.
- Ein WebAssembly AOT RayTracer.
Teilen Sie uns mit, ob Sie Ihre App öffentlich verfügbar gemacht haben. Wir listen sie hier auf!
Haben Sie Fragen? Funktionswünsche? Probleme?
Besuchen Sie unbedingt unsere FAQ, erstellen Sie ein Problem, eröffnen Sie eine GitHub-Diskussion oder besuchen Sie unseren Discord-Server – dort können Ihnen unser Technikteam und unsere Community weiterhelfen.
Mitwirken
Es gibt viele Möglichkeiten, zur Uno-Plattform beizutragen, da die WinRT- und WinUI-APIs ziemlich umfangreich sind! Lesen Sie unseren Beitragsleitfaden, um mehr über unseren Entwicklungsprozess zu erfahren und wie Sie Fehlerbehebungen und Verbesserungen vorschlagen können. Besuchen Sie uns auf Discord, um Hilfe bei der Mitarbeit zu erhalten!
Tragen Sie in Ihrem Browser mit GitPod.io zu Uno bei. Folgen Sie unserer Anleitung hier.
Mitwirkende
Der Dank geht an diese wunderbaren Menschen (Liste erstellt mit contrib.rocks):
? Danke schön.