Attualmente, esistono due generazioni della Libreria dell'interfaccia utente di Windows: WinUI 2 per UWP e WinUI in Windows App SDK (WinUI 3). Anche se entrambe possono essere usate nelle app pronte per la produzione in Windows 10 e versioni successive, ognuna ha destinazioni di sviluppo diverse.
WinUI è un framework nativo per l'esperienza utente (UX) per le applicazioni desktop di Windows e le applicazioni UWP.
Incorporando il sistema di progettazione Fluent in tutte le esperienze e in tutti i controlli e gli stili, WinUI offre esperienze coerenti, intuitive e accessibili usando i modelli di interfaccia utente più recenti.
Con il supporto sia per le app desktop che per le app UWP, puoi creare con WinUI da zero o eseguire gradualmente la migrazione delle app MFC, WinForms o WPF esistenti usando linguaggi familiari, ad esempio C++, C#, Visual Basic e JavaScript (usando React Native per desktop).
Le librerie WinUI sono ospitate nel WinUI GitHub repo dove è possibile segnalare richieste di funzionalità o bug e interagire con il team di WinUI.
Confronto tra WinUI 3 e WinUI 2
La tabella seguente evidenzia alcune delle differenze più significative tra WinUI 3 in Windows App SDK e WinUI 2 per la piattaforma UWP.
Libreria gruppo dell'esperienza utente e controlli completamente separata dagli SDK di Windows e del sistema operativo, inclusi il framework principale, la composizione e i livelli di input dello gruppo dell'esperienza utente.
Libreria gruppo dell'esperienza utente e controlli strettamente associata agli SDK di Windows e del sistema operativo.
WinUI 3 può essere usato per compilare app desktop/Win32 di Windows pronte per la produzione.
WinUI 2 può essere usato nelle applicazioni UWP e incorporato nelle applicazioni desktop usando le isole XAML (per istruzioni sull'installazione, vedere Introduzione alla libreria WinUI 2).
WinUI 3 viene fornito come componente del pacchetto framework di Windows App SDK, con i modelli di progetto di Visual Studio nell'estensione di Visual Studio (VSIX) di Windows App SDK.
Una parte di WinUI 2 viene fornita all'interno del sistema operativo stesso (la famiglia Windows.UI.* delle API WinRT UWP) e una parte viene fornita come libreria ("WinUI 2") con controlli ed elementi aggiuntivi e gli stili più recenti oltre a ciò che è già incluso nel sistema operativo stesso. Con WinUI 2, queste funzionalità vengono fornite in un pacchetto NuGet scaricabile. Tuttavia, altre parti significative del gruppo dell'interfaccia utente sono ancora incorporate nel sistema operativo, ad esempio il framework XAML principale e i livelli di input e composizione.
WinUI 3 supporta C# (.NET 6 e versioni successive) e C++ per le app desktop.
WinUI 2 supporta C# e Visual Basic (.NET Native) e C++ app.
WinUI 2 può essere incorporato nelle app UWP di produzione installando un pacchetto NuGet in un progetto UWP nuovo o esistente. È quindi possibile fare riferimento a controlli e stili WinUI direttamente nelle nuove app o aggiornando i riferimenti dello spazio dei nomi "Windows.UI" in "Microsoft.UI" nelle app esistenti.
WinUI 3 supporta il controllo WebView2 basato su Chromium
WinUI 2 supporta il controllo WebView in tutti i dispositivi e, a partire da WinUI 2.8, il controllo WebView2 su Desktop.
WinUI 3 funziona a un livello inferiore all'aggiornamento di Windows 10 di ottobre 2018 (versione 1809, build del sistema operativo 17763).
WinUI 2.0 - 2.7 funziona a un livello inferiore a Windows 10 Creators Update (versione 1703, build del sistema operativo 15063). WinUI 2.8 e le versioni successive funzionano a un livello inferiore all'aggiornamento di Windows 10 di ottobre 2018 (versione 1809, build del sistema operativo 17763).
L'origine di questo contenuto è disponibile in GitHub, in cui è anche possibile creare ed esaminare i problemi e le richieste pull. Per ulteriori informazioni, vedere la guida per i collaboratori.
Feedback su Windows developer
Windows developer è un progetto di open source. Selezionare un collegamento per fornire feedback:
Gli sviluppatori Windows hanno diverse opzioni per la creazione di applicazioni eseguite in Windows. Questo modulo presenta i framework dell'interfaccia utente di Windows disponibili per lo sviluppo di Windows. Fornisce inoltre indicazioni su come scegliere il framework migliore per l'applicazione.