Modernizzare le app desktop

Windows 11 e Windows 10 offrono numerose funzionalità da usare per introdurre un'esperienza moderna nelle app desktop. La maggior parte di queste funzionalità sono disponibili come componenti modulari che è possibile adottare nelle app desktop quando lo si ritiene opportuno, senza la necessità di riscrivere l'applicazione per una piattaforma diversa. È possibile ottimizzare le attuali app desktop scegliendo le funzionalità di Windows da adottare.

Questo argomento descrive le funzionalità che è possibile usare oggi stesso nelle app desktop. Per un'esercitazione che illustra come modernizzare un'app esistente per usare molte delle funzionalità descritte in questo argomento, vedi l'esercitazione Modernizzare un'app WPF.

Nota

Serve assistenza per la migrazione delle app desktop a Windows 10 o versioni successive? Il servizio App Assure offre supporto diretto e gratuito agli sviluppatori che trasferiscono le loro app in Windows 10 e versioni successive. Il programma è disponibile per tutti i fornitori di software indipendente e le aziende idonee. Per altre informazioni sull'idoneità e sul programma stesso, visitare /fasttrack/win-10-app-assure-assistance-offered. Per iniziare subito, inviare la richiesta.

Applicare le funzionalità di Windows 11

Windows 11 segna un'evoluzione visiva del sistema operativo Windows e introduce nuove funzionalità che migliorano le nozioni fondamentali dell'app e l'esperienza utente. Molte di queste funzionalità sono abilitate per impostazione predefinita per le app, ma le app desktop possono richiedere aggiornamenti per l'integrazione con alcune nuove funzionalità. Queste funzionalità includono angoli arrotondati di finestre di primo livello, layout di snap e il menu di scelta rapida aggiornato in Esplora file.

Per altre informazioni, vedere Le 11 cose che puoi fare per ottimizzare la tua app in Windows 11.

Windows App SDK

SDK per app di Windows è un set di nuovi componenti e strumenti per sviluppatori che rappresenta la prossima evoluzione della piattaforma per lo sviluppo di app di Windows. Windows App SDK offre un set unificato di API e strumenti che possono essere usati in modo coerente da qualsiasi app desktop in Windows 11 e molte versioni di Windows 10. È possibile usare i modelli di progetto per creare nuove app desktop che usano Windows App SDK con un'interfaccia utente basata su WinUI 3 oppure è possibile usare Windows App SDK nelle app desktop esistenti.

Per ulteriori informazioni, vedere Windows App SDK.

Libreria dell'interfaccia utente di Windows

La libreria dell'interfaccia utente di Windows (WinUI) è un framework nativo per l'esperienza utente per le applicazioni desktop di Windows e le applicazioni UWP. La libreria WinUI era inizialmente un toolkit che forniva le versioni nuove e aggiornate dei controlli XAML WinRT per le app basate sulla piattaforma UWP (Universal Windows Platform) destinate alle versioni precedenti di Windows. La versione più recente, WinUI 3, è cresciuta in termini di estensione ed è ora la moderna piattaforma dell'interfaccia utente nativa per le app desktop di Windows.

Puoi usare WinUI nei modi seguenti nelle app desktop:

Per altre informazioni, vedere Libreria dell'interfaccia utente di Windows (WinUI).

API di Windows Runtime

Nell'app desktop WPF, Windows Forms o C++ è possibile chiamare direttamente molte API di Windows Runtime per integrare esperienze moderne e illuminanti per gli utenti. Puoi ad esempio chiamare le API di Windows Runtime per aggiungere notifiche di tipo avviso popup all'app desktop.

Per altre informazioni, vedi Usare le API di Windows Runtime nelle app desktop.

Distribuzione MSIX

MSIX è un formato di pacchetto moderno che fornisce un'esperienza universale per tutte le app di Windows, tra cui UWP, WPF, Windows Forms e Win32. MSIX riunisce gli aspetti migliori delle tecnologie di installazione MSI, .appx, App-V e ClickOnce per offrire un'esperienza di creazione di pacchetti moderna e affidabile.

L'inserimento delle app desktop di Windows in pacchetti MSIX assicura un'esperienza superiore di installazione e aggiornamento, oltre a offrire un modello di sicurezza gestito con un sistema di funzionalità flessibile, il supporto per Microsoft Store, funzionalità di gestione aziendale e molti modelli di distribuzione personalizzati.

Per altre informazioni, vedere Creazione di un pacchetto MSIX dal codice.

Usare pacchetti del framework MSIX in modo dinamico in fase di esecuzione

La funzionalità dipendenze dinamiche in Windows App SDK e nel sistema operativo Windows 11 consente alle app di fare riferimento ai pacchetti del framework MSIX in fase di esecuzione. Questa funzionalità deve essere usata principalmente dalle app desktop non in pacchetto per chiamare le API fornite dai pacchetti del framework MSIX.

Per altre informazioni, vedere Usare pacchetti framework MSIX in modo dinamico dall'app desktop.

.NET

.NET (precedentemente noto come .NET Core) supporta le app desktop di Windows, incluse le app WinUI 3 create con Windows App SDK (vedere Creare il primo progetto WinUI 3). .NET supporta anche Windows Presentation Foundation (WPF) e app Windows Form (WinForms) . È possibile eseguire le app desktop di Windows nuove ed esistenti in .NET e sfruttare tutti i vantaggi che .NET ha da offrire.

Per ulteriori informazioni, vedere Novità di .NET 6.

Ospitare controlli XAML WinRT (isole XAML)

A partire dalla versione 1903 di Windows 10, possibile aggiungere i controlli XAML UWP direttamente in qualsiasi elemento dell'interfaccia utente di un'app WPF, Windows Forms o C++ associata a un handle di finestra (HWND). È quindi possibile integrare completamente le funzionalità UWP più recenti, come Windows Ink, e i controlli che supportano il sistema Fluent Design nelle finestre e in altre superfici di visualizzazione delle app desktop. Questo scenario di sviluppo viene a volte identificato come isole XAML.

Per altre informazioni, vedere Controlli XAML WinRT nelle app desktop

Usare il livello visivo nelle app desktop

Ora puoi usare le API di Windows Runtime nelle app desktop non UWP per ottimizzare l'aspetto e le funzionalità delle app WPF, Windows Forms e C++ e sfruttare i vantaggi delle più recenti funzionalità dell'interfaccia utente di Windows disponibili solo tramite UWP. Questa opzione è utile se è necessario creare esperienze personalizzate superiori rispetto ai controlli XAML WinRT predefiniti che è possibile ospitare tramite isole XAML.

Per altre informazioni, vedere Modernizzare le app desktop con il livello visivo.

Funzionalità aggiuntive disponibili per le app con identità del pacchetto

Alcune esperienze moderne di Windows sono disponibili solo per le app desktop con identità del pacchetto in fase di esecuzione. Queste funzionalità includono determinate API di Windows Runtime, estensioni del pacchetto e componenti UWP. Per altre informazioni, vedere Funzionalità che richiedono l'identità del pacchetto.

Controlli XAML WinRT ottimizzati per le app desktop

Per sviluppare app basate sulla piattaforma UWP (Universal Windows Platform) destinate esclusivamente alla famiglia di dispositivi desktop o se si sceglie di usare i controlli XAML WinRT in un'app desktop WPF, Windows Forms o C++, i seguenti controlli XAML WinRT nuovi e aggiornati sono progettati per offrire esperienze ottimizzate per il desktop con il sistema Fluent Design. Questi controlli sono stati introdotti in Windows 10, versione 1809 (aggiornamento di ottobre 2018 o versione 10.0.17763).

CTRL Descrizione
MenuBar Offre un modo semplice e rapido per esporre un set di comandi per le app che potrebbero richiedere livelli di organizzazione o raggruppamento superiori rispetto a quelli consentiti da CommandBar.
DropDownButton Mostra una freccia di espansione come indicatore visivo della disponibilità di un riquadro a comparsa collegato che contiene altre opzioni.
SplitButton Fornisce un pulsante composto da due parti che è possibile richiamare separatamente. Una parte funziona come pulsante standard e richiama un'azione immediata. L'altra parte richiama un riquadro a comparsa che contiene altre opzioni tra cui scegliere.
ToggleSplitButton Fornisce un pulsante composto da due parti che è possibile richiamare separatamente. Una parte funziona come un interruttore che è possibile attivare o disattivare. L'altra parte richiama un riquadro a comparsa che contiene altre opzioni tra cui scegliere.
CommandBarFlyout Consente di visualizzare le attività comuni degli utenti nel contesto di un elemento del canvas dell'interfaccia utente.
ComboBox È ora possibile rendere modificabile una casella combinata in modo che l'utente possa immettere valori non inclusi nel controllo.
TreeView È ora possibile configurare una visualizzazione ad albero per abilitare l'associazione di dati, i modelli di elementi e il trascinamento della selezione.
DataGridView Offre un modo flessibile per visualizzare una raccolta di dati in righe e colonne. Il controllo è disponibile nel toolkit della community Windows.

Altre tecnologie per le app desktop moderne

Microsoft Graph

Microsoft Graph è una raccolta di API che è possibile usare per creare app per organizzazioni e privati che interagiscono con i dati di milioni di utenti. Microsoft Graph espone API REST e librerie client per l'accesso ai dati di:

  • Azure Active Directory
  • App di Office di Microsoft 365: SharePoint, OneDrive, Outlook/Exchange, Microsoft Teams, OneNote, Planner ed Excel
  • Servizi di Enterprise Mobility + Security: Identity Manager, Intune, Advanced Threat Analytics e Advanced Threat Protection.
  • Servizi di Windows: attività e dispositivi

Per altre informazioni, vedere la documentazione di Microsoft Graph.

Schede adattive

Schede adattive è un framework aperto e multipiattaforma che è possibile usare per scambiare contenuto dell'interfaccia utente basato su scheda in modo comune e coerente tra dispositivi e piattaforme.

Per altre informazioni, vedere la documentazione di Schede adattive.