Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
WinUI 3 è una piattaforma di esperienza utente nativa per la creazione di app di Windows moderne. Questa anteprima di WinUI 3 funziona con app desktop/Win32 e UWP e include modelli di progetto di Visual Studio per iniziare a creare app con un'interfaccia utente basata su WinUI e un pacchetto NuGet che contiene le librerie WinUI.
WinUI 3 - Project Reunion 0.5 Preview è la prima versione di WinUI 3 in cui viene fornita come parte del pacchetto Project Reunion (ora chiamato SDK per app di Windows). Oltre a questa modifica, questa versione di anteprima contiene correzioni di bug critiche, maggiore stabilità e altri miglioramenti generali (vedere Funzionalità introdotte in WinUI 3 - Project Reunion 0.5 Preview).
Importante
Questa anteprima di WinUI 3 è destinata alla valutazione anticipata e per raccogliere feedback dalla community degli sviluppatori. Non deve essere utilizzato per applicazioni di produzione.
Usare il repository GitHub WinUI per fornire commenti e segnalare suggerimenti e problemi.
Annotazioni
Project Reunion è il nome di codice precedente per SDK per app di Windows. Questa documentazione usa ancora Project Reunion quando si fa riferimento alle versioni precedenti che usavano questo nome di codice.
Installare WinUI 3 - Project Reunion 0.5 Preview
Questa versione di WinUI 3 è disponibile come parte dell'anteprima di Project Reunion 0.5.
Per eseguire l'installazione, seguire le istruzioni disponibili in Installare gli strumenti per i canali di anteprima e sperimentale di SDK per app di Windows.
A differenza delle versioni di anteprima precedenti di WinUI 3, si scarierà un pacchetto VSIX Project Reunion anziché un pacchetto VSIX WinUI. Project Reunion VSIX include modelli WinUI 3 in Visual Studio che userai per costruire l'app WinUI. Dopo aver completato l'installazione, l'esperienza di sviluppo di un'app WinUI non deve cambiare.
Annotazioni
Puoi anche clonare e creare la build della versione Preview di WinUI 3 di XAML Controls Gallery.
Annotazioni
Per usare gli strumenti winUI 3, ad esempio Albero visuale attivo, Ricaricamento rapido ed Esplora proprietà attive, è necessario abilitare gli strumenti winUI 3 con le funzionalità di anteprima di Visual Studio, come descritto nelle istruzioni riportate qui.
Dopo aver configurato l'ambiente di sviluppo, vedere Modelli WinUI 3 in Visual Studio per acquisire familiarità con i modelli di progetto ed elemento di Visual Studio disponibili.
Per altre informazioni su come iniziare a usare i modelli di progetto WinUI, vedere gli articoli seguenti:
Oltre alle limitazioni e ai problemi noti, la compilazione di un'app usando i progetti WinUI è simile alla compilazione di un'app UWP con XAML e WinUI 2. Pertanto, la maggior parte della documentazione delle linee guida per le app UWP e nelle namespace Windows.UI di WinRT nel Windows SDK è applicabile.
La documentazione di riferimento dell'API WinUI 3 è disponibile qui: Informazioni di riferimento sulle API WinUI 3
Se hai creato un progetto con WinUI Preview 4, puoi aggiornare il progetto per usare Project Reunion 0.5 Preview.
WebView2
Per usare WebView2 con questa anteprima di WinUI 3, scarica l'Evergreen Bootstrapper o l'Evergreen Standalone Installer disponibili in questa pagina se non hai già installato il runtime WebView2.
Windows Community Toolkit
Se usi Windows Community Toolkit, scarica la versione più recente.
Supporto di Visual Studio
Per sfruttare le funzionalità di strumenti più recenti aggiunte in WinUI 3, ad esempio Ricaricamento rapido, Albero visuale attivo ed Esplora proprietà attive, è necessario usare la versione di anteprima più recente di Visual Studio con l'anteprima più recente di WinUI 3 e assicurarsi di abilitare gli strumenti WinUI nelle funzionalità di anteprima di Visual Studio, come descritto nelle istruzioni riportate qui. La tabella seguente illustra la compatibilità delle versioni future con WinUI 3 - Project Reunion 0.5 Preview:
| Versione di Visual Studio | WinUI 3 - Anteprima Project Reunion 0.5 |
|---|---|
| 16.8 RTM | NO |
| Versioni di anteprima della versione 16.9 | Sì, con gli strumenti |
| 16.9 RTM | Sì, ma nessun ricaricamento rapido, struttura ad albero visuale attiva o Esplora proprietà attive |
| 16.10 Previews | Sì, con gli strumenti |
Modifiche principali introdotte in questa versione
WinUI 3 ora viene fornito come parte del pacchetto Project Reunion, che sarà anche il meccanismo per il modo in cui verranno fornite le versioni future supportate.
L'acrilico in-app è ora supportato.
Il controllo Pivot non è più supportato ed è stato deprecato in WinUI 3. È consigliabile usare il controllo NavigationView per gli scenari di spostamento in-app.
WinUI 3 e Project Reunion saranno supportati solo a livello inferiore a Windows 10 versione 1809. Richiede la build 17763 o successiva.
Le funzionalità di anteprima sono ora contrassegnate come sperimentali.
- Una funzionalità di anteprima è qualsiasi elemento che continuerà a far parte delle anteprime di WinUI 3, ma non farà parte della prossima versione supportata di WinUI 3.
- Le funzionalità di anteprima includono anche tutte le API sperimentali che fanno parte dell'anteprima di WinUI per UWP 2.6.
- Quando si compila un'app che usa una funzionalità di anteprima, l'app genererà un avviso.
Elenco dei bug risolti in WinUI 3 - Project Reunion 0.5 Preview
Di seguito è riportato un elenco di bug che il team ha risolto dall'anteprima 3. C'è stato anche molto lavoro in corso sulla stabilizzazione e per migliorare i nostri test.
Il messaggio di errore winUI 3 richiede la riformulazione: "Impossibile risolvere "Windows.metadata". Si prega di installare il Windows Software Development Kit. Windows SDK viene installato con Visual Studio."
L'app non risponde alle modifiche del tema in Windows quando si seleziona il tema predefinito di Windows fino al riavvio
Eccezione nella chiamata a XamlDirect.CreateInstance
- Grazie per @BorzillaR aver presentato questo problema su GitHub.
ProgressBar non mostra la differenza tra l'opzione Paused e Error
Il riquadro a comparsa della visualizzazione dell'elenco StandardUICommand viene visualizzato nella posizione errata.
Arresto anomalo nel desktop XamlControlsGallery quando si tenta di riordinare gli elementi ListView con tocco
- Grazie per @j0shuams aver presentato questo problema su GitHub.
Premere e tenere premuto RichTextBlock posiziona il riquadro a comparsa in una posizione errata
Le frecce sinistra/destra non spostano il focus tra i pulsanti di scelta
- Grazie per @vmadurga aver presentato questo problema su Github.
L'Assistente vocale rimane silenzioso quando l'utente preme i tasti freccia giù/su per selezionare il mese/anno/data successivo/precedente in DatePicker
NavigationView light-dismiss non funziona in WinUI 3
Nuove funzionalità e funzionalità introdotte nelle anteprime di WinUI 3 precedenti
Le funzionalità e le funzionalità seguenti sono state introdotte in WinUI 3 Previews 1-4 e continuano a essere supportate in WinUI 3 - Project Reunion 0.5 Preview.
- Possibilità di creare app desktop con WinUI, tra cui .NET per app Win32
- RadialGradientBrush
- Aggiornamenti di TabView
- Aggiornamenti del tema scuro
- Miglioramenti e aggiornamenti di WebView2
- Supporto per valori DPI elevati
- Supporto per il ridimensionamento e lo spostamento delle finestre
- Aggiornato per specificare la versione più recente di Edge
- Non è più necessario fare riferimento a un pacchetto NuGet specifico di WebView2
- SwapChainPanel
- Supporto di MRT Core
- Ciò rende le app più veloci e più leggere all'avvio e offre una ricerca più rapida delle risorse.
- Supporto ARM64
- Trascinare e rilasciare all'interno e fuori dalle app
- RenderTargetBitmap (attualmente solo contenuto XAML - nessun contenuto SwapChainPanel)
- Supporto del cursore personalizzato
- Input fuori thread
- Miglioramenti alla strumentazione e all'esperienza degli sviluppatori.
- Live Visual Tree, Ricaricamento rapido, Live Property Explorer e strumenti simili
- IntelliSense per WinUI 3
- Miglioramenti necessari per la migrazione open source
- Funzionalità della barra del titolo personalizzate: nuove API Window.ExtendsContentIntoTitleBar e Window.SetTitleBar che consentono agli sviluppatori di creare barre del titolo personalizzate nelle app desktop.
- Supporto di VirtualSurfaceImageSource
Fornire commenti e suggerimenti
I commenti e i suggerimenti sono disponibili nel repository GitHub winUI.
Limitazioni e problemi noti
L'anteprima di WinUI 3 - Project Reunion 0.5 è solo quella, un'anteprima. Gli scenari relativi alle app desktop sono particolarmente nuovi. Si prega di aspettarsi bug, limitazioni e altri problemi.
Gli elementi seguenti sono alcuni dei problemi noti relativi a WinUI 3 - Project Reunion 0.5 Preview. Se viene rilevato un problema non elencato di seguito, segnalarlo contribuendo a un problema esistente o inviando un nuovo problema tramite il repository GitHub winUI.
Supporto della piattaforma e del sistema operativo
WinUI 3 - Project Reunion 0.5 Preview è compatibile con i PC che eseguono l'aggiornamento di Windows 10 di ottobre 2018 (versione 1809 - build 17763) e versioni successive.
Strumenti di sviluppo
- Sono supportate solo le app C# e C++/WinRT
- Le app desktop supportano .NET 6 (e versioni successive) e C# 9 e devono essere incluse in un pacchetto in un'app MSIX
- Le app UWP supportano .NET Native e C# 7.3
- Gli strumenti di sviluppo e IntelliSense potrebbero non funzionare correttamente in Visual Studio.
- Nessun supporto per la finestra di progettazione XAML
- Le nuove app C++/CX non sono supportate, ma le app esistenti continueranno a funzionare (passare a C++/WinRT il prima possibile)
- Il supporto per più finestre nelle app desktop è in corso, ma non è ancora completo e stabile.
- Segnalare un bug nel repository se vengono riscontrati nuovi problemi o regressioni con comportamento a più finestre.
- La distribuzione di desktop non in pacchetto non è supportata
- Quando si esegue un'app desktop con F5, assicurarsi di eseguire il progetto di packaging. Se si preme F5 nel progetto dell'app, verrà eseguita un'app non in pacchetto, che WinUI 3 non supporta ancora.
Funzionalità della piattaforma mancanti
- Supporto Xbox
- Supporto di HoloLens
- Popup in finestra
- In particolare, la
ShouldConstrainToRootBoundsproprietà agisce sempre come se fosse impostata sutrue, indipendentemente dal valore della proprietà.
- In particolare, la
- Supporto per la scrittura a mano
- Acrylic
- MediaElement e MediaPlayerElement
- MapControl
- RenderTargetBitmap per SwapChainPanel e contenuto non XAML
- SwapChainPanel non supporta la trasparenza
- Global Reveal usa il comportamento di fallback, un pennello solido
- Le isole XAML non sono supportate in questa versione
- Le librerie dell'ecosistema di terze parti non funzioneranno completamente
- Gli IME non funzionano
- CoreWindow, ApplicationView, CoreApplicationView, CoreDispatcher e le relative dipendenze non sono supportate nelle app desktop (vedere di seguito)
CoreWindow, ApplicationView, CoreApplicationView e CoreDispatcher nelle app desktop
Novità in Anteprima 4 e standard in futuro, CoreWindow, ApplicationView, CoreApplicationViewCoreDispatcher e le relative dipendenze non sono disponibili nelle app desktop. Ad esempio, la proprietà Window.Dispatcher è sempre null, ma la proprietà Window.DispatcherQueue può essere utilizzata come alternativa.
Queste API funzionano solo nelle app UWP. Nelle anteprime precedenti hanno funzionato parzialmente anche nelle app desktop, ma in Preview4 sono state completamente disabilitate. Queste API sono progettate per il caso UWP in cui è presente una sola finestra per thread e una delle funzionalità di WinUI3 consiste nell'abilitare più.
Esistono API che dipendono internamente dall'esistenza di queste API, che di conseguenza non sono supportate in un'app desktop. Queste API in genere hanno un metodo statico GetForCurrentView . Ad esempio UIViewSettings.GetForCurrentView.
Per altre informazioni sulle API interessate, nonché su soluzioni alternative e sostituzioni per queste API, vedere Modifiche all'API WinRT per le app desktop
Problemi noti
C'è un problema che causa il mancato avvio delle app UWP in Windows 10 versione 1809. Il team sta lavorando attivamente alla correzione di questo bug per la versione di anteprima successiva.
ALT+F4 non chiude le finestre dell'app desktop.
L'evento UISettings.ColorValuesChanged e AccessibilitySettings.HighContrastChanged non sono più supportati nelle app desktop. Questo può causare problemi se si usa per rilevare le modifiche nei temi di Windows.
Questa versione include alcune API sperimentali, che genereranno avvisi di compilazione quando vengono usati. Questi non sono stati testati accuratamente dal team e potrebbero avere problemi sconosciuti. Segnalare un bug nel repository in caso di problemi.
In precedenza, per ottenere un'istanza compositionCapabilities si chiamerebbe CompositionCapabilites.GetForCurrentView(). Tuttavia, le funzionalità restituite da questa chiamata non dipendono dalla visualizzazione. Per risolvere e riflettere questo problema, è stato eliminato lo statico GetForCurrentView() in questa versione, quindi ora è possibile creare direttamente un oggetto CompositionCapabilties .
Per le app UWP C#:
Il framework WinUI 3 è un set di componenti WinRT che possono essere usati da C++ (usando C++/WinRT) o C#. Quando si usa C#, sono disponibili due versioni di .NET, a seconda del modello di app: quando si usa WinUI in un'app UWP, si usa .NET Native; quando si usa in un'app desktop, si usa .NET 6 o versione successiva (e C#/WinRT).
Quando si usa C# per un'app WinUI in UWP, esistono alcune differenze tra gli spazi dei nomi delle API rispetto all'uso di C# in un'app desktop WinUI o in un'applicazione WinUI per UWP: alcuni tipi si trovano in uno
Microsoftspazio dei nomi anziché in unoSystemspazio dei nomi. Ad esempio, anziché l'interfacciaINotifyPropertyChangedessere nello spazio dei nomiSystem.ComponentModel, è nello spazio dei nomiMicrosoft.UI.Xaml.Data.Questo vale per:
-
INotifyPropertyChanged(e tipi correlati) INotifyCollectionChangedICommand
Le versioni dello
Systemspazio dei nomi esistono ancora, ma non possono essere usate con WinUI 3. Ciò significa cheObservableCollectionnon funziona as-is nelle app UWP WinUI 3 C#. Per una soluzione alternativa, vedi l'esempio CollectionsInterop nello snapshot archiviato di XAML Controls Gallery.-
Snapshot della raccolta di controlli XAML per WinUI 3 Preview
Il winui3preview ramo non è più disponibile e il repository xaml Controls Gallery è stato rinominato in microsoft/WinUI-Gallery. L'app di esempio, così come era per WinUI 3 - Project Reunion 0.5 Preview, è conservata in un commit storico. Questa istantanea non rispecchia l'attuale WinUI 3 Gallery.
Per scaricare lo snapshot cronologico, clonare il repository ed eseguire il commit conservato:
git clone https://github.com/microsoft/WinUI-Gallery.git
cd WinUI-Gallery
git checkout 136c81578c6f30750efb268a4a8e2da871f182ef