Visual Studio per lo sviluppo di app Windows

Visual Studio è l'IDE consigliato per la creazione di app Windows con WinUI e SDK per app di Windows. Offre un'integrazione approfondita con la piattaforma Windows e gli strumenti appositamente creati per lo sviluppo di app basate su XAML.

Le funzionalità principali per gli sviluppatori di app Windows includono:

  • XAML Ricaricamento rapido : modificare il markup XAML mentre l'app è in esecuzione e visualizzare le modifiche applicate immediatamente senza riavviare
  • Struttura ad albero visuale live XAML : esaminare l'albero visivo di runtime dell'app in esecuzione per eseguire il debug dei problemi di layout e comprendere la gerarchia degli elementi
  • IntelliSense per XAML e C#/C++ : ottenere il completamento del codice, informazioni rapide ed evidenziazione degli errori per markup e code-behind
  • Debug integrato : impostare punti di interruzione in XAML e codice, esaminare i data binding e diagnosticare i problemi di rendering dell'interfaccia utente

Per iniziare, vedere Creare ed eseguire un progetto WinUI 3.

Modelli di project WinUI

Visual Studio include modelli di progetto che consentono di creare rapidamente app WinUI. Per trovarli, aprire File>New>Project, filtrare quindi in base WinUI nell'elenco a discesa project tipo o cercare WinUI.

Modelli di progetto WinUI

Modelli di app

Scegliere un modello basato sulla shell dell'app da cui iniziare. Selezionare un nome di modello per visualizzare uno screenshot dell'app creata.

Modello Lingua Modello winapp CLI Descrizione
App vuota WinUI (in pacchetto) C# e C++ winui (C#) Una singola finestra senza contenuto. Questo è il punto di partenza consigliato per la maggior parte delle nuove app.
App di navigazione WinUI C# winui-navview Shell NavigationView con pagine Home, Informazioni e Impostazioni.
WinUI TabView App C# winui-tabview Shell TabView le cui schede si trovano nella barra del titolo.
WinUI MVVM App C# winui-mvvm Modello di pagina e visualizzazione che usa il modello MVVM (Model-View-ViewModel) con CommunityToolkit.Mvvm.
App vuota (inclusa nel progetto WAP) C# e C++ Non disponibile Un'app vuota e un progetto di creazione pacchetti per applicazioni Windows separato.

Creare un progetto dalla riga di comando

I modelli di app C# sono disponibili anche tramite il terminale attraverso la app di Windows Development CLI (winapp CLI). Passare il nome del modello dalla tabella a winapp new, quindi compilare e avviare l'app con winapp run:

winapp new --name MyApp --template winui-navview --use-defaults
cd MyApp
winapp run

Eseguire winapp new --list per visualizzare ogni modello installato. Il progetto generato è un file con estensione csproj standard, quindi è possibile aprirlo in Visual Studio in qualsiasi momento. Per altre informazioni, vedere Uso di winapp CLI con WinUI.

App vuota WinUI (confezionata)

Crea un'app desktop in C# (.NET) o C++ (Win32) con un'interfaccia utente basata su WinUI. Il project inizia con una singola finestra derivata da Microsoft.UI.Xaml.Window, pronta per aggiungere controlli e pagine personalizzati. Questo è il punto di partenza consigliato per la maggior parte delle nuove app. Per una procedura dettagliata, vedere Creare ed eseguire un progetto WinUI 3.

Un'app creata dal modello App vuota WinUI, che mostra una finestra vuota con una barra del titolo.

App di navigazione WinUI

Crea un'app C# con navigationView nel riquadro sinistro. Il modello include le pagine Home e About, un elemento Settings e il codice di navigazione che consente di passare tra di essi.

Un'app creata dal modello App di navigazione WinUI, che mostra un riquadro di navigazione con elementi Home, Informazioni e Impostazioni e home page.

WinUI TabView App

Crea un'app C# con un controllo TabView che si estende fino alla barra del titolo. Il modello include le schede Home e Informazioni e un pulsante per l'aggiunta di nuove schede.

Un'app creata dal modello di app TabView WinUI, che mostra le schede Home e Informazioni sulla barra del titolo.

WinUI MVVM App

Crea un'app C# che separa l'interfaccia utente dalla logica con il modello MVVM. Il modello usa CommunityToolkit.Mvvm per le proprietà e i comandi osservabili e mostra un contatore associato a un ViewModel.

Un'app creata dal modello di app MVVM WinUI, che mostra un'intestazione

App vuota (in pacchetto con Project WAP)

Uguale al modello App vuota WinUI (in pacchetto) precedente, ma aggiunge un Progetto di packaging delle applicazioni Windows separato alla soluzione. Questo project gestisce la compilazione dell'app in un pacchetto MSIX per la distribuzione. Se si preferisce una configurazione più semplice, è possibile usare single-project MSIX invece per evitare di gestire il progetto di creazione di pacchetti separato.

Modelli di componente e test

Questi modelli creano librerie e progetti di test che funzionano insieme a un'app WinUI.

Modello Lingua Modello winapp CLI Descrizione
Libreria di classi WinUI C# winui-lib Libreria di classi (DLL) .NET per la condivisione di codice e componenti dell'interfaccia utente tra app WinUI.
Componente Windows Runtime C++ Non disponibile Componente Windows Runtime scritto in C++/WinRT che può essere utilizzato da qualsiasi app con un'interfaccia utente basata su WinUI, indipendentemente dal linguaggio di programmazione.
WinUI Unit Test App C# e C++ winui-unittest (C#) Un project MSTest per la scrittura e l'esecuzione di test automatizzati sull'app.

Modelli di elementi WinUI

I modelli di elemento consentono di aggiungere nuovi file a un project WinUI esistente. Fare clic con il pulsante destro del mouse sul progetto in Esplora soluzioni selezionare Aggiungi>Nuovo elemento e scegliere la scheda WinUI.

modelli di elementi WinUI

Modello Lingua Descrizione
Pagina vuota C# e C++ Aggiunge un file XAML e un file di codice che definisce una nuova pagina derivata dalla classe Microsoft.UI.Xaml.Controls.Page .
Finestra vuota C# e C++ Aggiunge un file XAML e un file di codice che definisce una nuova finestra derivata dalla classe Microsoft.UI.Xaml.Window .
Dialogo contenuto C# Aggiunge un file XAML e un file di codice che definisce un nuovo dialogo derivato dalla classe Microsoft.UI.Xaml.Controls.ContentDialog. Per altre informazioni, vedere Controlli finestra di dialogo.
Dizionario risorse C# e C++ Aggiunge una raccolta di risorse XAML vuota e con chiave. Per ulteriori informazioni, vedere ResourceDictionary e riferimenti alle risorse XAML.
File di risorse (con estensione resw) C# e C++ Aggiunge un file per l'archiviazione di stringhe e risorse condizionali per l'app. Puoi usare questo elemento per localizzare l'app. Per ulteriori informazioni, vedi Localizzazione delle stringhe nell'interfaccia utente e nel manifesto del pacchetto dell'applicazione.
Controllo basato su modelli C# e C++ Aggiunge un file di codice per la creazione di un controllo basato su modelli con uno stile predefinito. Il controllo basato su modelli è derivato dalla classe Microsoft.UI.Xaml.Controls.Control .

Per una procedura dettagliata che illustra come usare questo modello di elemento, vedi Creare controlli basati su modelli XAML. Per altre informazioni sui controlli basati su modelli, vedere Controlli XAML personalizzati.
Controllo utente C# e C++ Aggiunge un file XAML e un file di codice per la creazione di un controllo utente che deriva dalla classe Microsoft.UI.Xaml.Controls.UserControl . In genere, un controllo utente incapsula i controlli esistenti correlati e fornisce la propria logica.

Per altre informazioni sui controlli utente, vedere controlli XAML personalizzati.

Per aggiungere questi elementi dalla riga di comando in un progetto C#, usare il modello di elemento corrispondente dotnet new , ad esempio dotnet new winui-page -n SettingsPage. Eseguire dotnet new list winui per visualizzare tutti i modelli di elemento.

Vedere anche