.NET Core: crea app UWP

In questo capitolo, discuteremo come creare un'applicazione UWP utilizzando .NET Core. UWP è anche noto come applicazione UWP di Windows 10. Questa applicazione non funziona su versioni precedenti di Windows, ma funzionerà solo su versioni future di Windows.

Di seguito sono riportate alcune eccezioni in cui UWP verrà eseguito senza problemi.

  • Se vuoi eseguirlo localmente devi avere Windows 10, puoi anche sviluppare su Windows 8 e poi dovrai eseguirlo su Emulator, ma è incoraggiato usare Windows 10.

  • Per l'applicazione UWP avrai bisogno anche di Windows 10 SDK. Apriamo l'installazione di Visual Studio 2015 e quindi modifichiamo Visual Studio.

  • Nella pagina delle funzionalità selezionate, scorri verso il basso e vedrai Strumenti di sviluppo app di Windows universali, seleziona l'opzione come mostrato di seguito.

Qui puoi vedere le diverse versioni di SDK e l'ultimo aggiornamento anche su Strumenti, fai clic su Avanti.

Ora, fai clic su Install pulsante.

Al termine dell'installazione, sarà necessario riavviare il sistema.

Implementiamo ora la piattaforma UWP seguendo questi passaggi.

  • Innanzitutto, avvia Visual Studio 2015.

  • Fare clic sul menu File e selezionare Nuovo → Progetto; verrà visualizzata una finestra di dialogo Nuovo progetto. È possibile visualizzare i diversi tipi di modelli nel riquadro sinistro della finestra di dialogo.

  • Nel riquadro di sinistra, puoi vedere la visualizzazione ad albero, ora seleziona Modello universale da Modelli → Visual C # → Windows.

  • Dal riquadro centrale, seleziona il modello App vuota (Windows universale).

  • Dai un nome al progetto digitando UWPFirstApp nel campo Nome e fare clic su OK.

  • Viene visualizzata la finestra di dialogo versione di destinazione / versione minima. Le impostazioni predefinite vanno bene per questo tutorial, quindi seleziona OK per creare il progetto.

  • Qui, abbiamo un unico progetto che può indirizzare tutti i dispositivi Windows 10 e noterai che sia .NET Core che UWP sono la semplificazione del multi-targeting.

  • Quando si apre un nuovo progetto, i suoi file vengono visualizzati sul lato destro del riquadro Esplora soluzioni. Potrebbe essere necessario scegliere la scheda Esplora soluzioni invece della scheda Proprietà per visualizzare i file.

  • Sebbene l'app vuota (finestra universale) sia un modello minimo, contiene ancora molti file. Questi file sono essenziali per tutte le app UWP che usano C #. Ogni progetto creato in Visual Studio contiene i file.

  • Per vedere l'esempio in esecuzione, apriamo MainPage.XAML e aggiungiamo il codice seguente.

<Page 
   x:Class = "UWPFirstApp.MainPage" 
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" 
   xmlns:local = "using:UWPFirstApp" 
   xmlns:d = "http://schemas.microsoft.com/expression/blend/2008" 
   xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" 
   mc:Ignorable = "d">  
   
   <Grid Background = "{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
      <StackPanel HorizontalAlignment = "Center"> 
         <TextBlock Text = "Hello, world!"  
            Margin = "20" 
            Width = "200" 
            HorizontalAlignment = "Left"/> 
         <TextBlock Text = "Write your name." 
            Margin = "20" 
            Width = "200" 
            HorizontalAlignment = "Left"/> 
         <TextBox x:Name = "txtbox"  
            Width = "280" 
            Margin = "20" 
            HorizontalAlignment = "Left"/> 
         <Button x:Name = "button" Content = "Click Me" 
            Margin = "20" 
            Click = "button_Click"/> 
         <TextBlock x:Name = "txtblock"  
            HorizontalAlignment = "Left" 
            Margin = "20"/> 
      </StackPanel> 
   </Grid> 

</Page>

Di seguito è riportato l'evento clic del pulsante in C #.

using System; 
using System.Collections.Generic; 
using System.IO; 
using System.Linq; 
using System.Runtime.InteropServices.WindowsRuntime; 

using Windows.Foundation; 
using Windows.Foundation.Collections; 

using Windows.UI.Xaml; 
using Windows.UI.Xaml.Controls; 
using Windows.UI.Xaml.Controls.Primitives; 
using Windows.UI.Xaml.Data; 
using Windows.UI.Xaml.Input; 
using Windows.UI.Xaml.Media; 
using Windows.UI.Xaml.Navigation;  

// The Blank Page item template is documented at 
// http://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409  

namespace UWPHellowWorld { 
   /// <summary> 
   /// An empty page that can be used on its own or navigated to within a Frame. 
   /// </summary> 
   public sealed partial class MainPage : Page { 
      public MainPage() { 
         this.InitializeComponent(); 
      }  
      private void button_Click(object sender, RoutedEventArgs e) { 
         if (txtbox.Text != "") 
            txtblock.Text = "Hello: " + txtbox.Text; 
         else 
            txtblock.Text = "You have not write your name"; 
      } 
   } 
}

Eseguiamo ora il codice sopra sulla macchina locale e vedrai la seguente finestra. Ora digita un nome qualsiasi nella casella di testo e premi il tastoClick Me pulsante.