.NET Core: creación de una aplicación para UWP

En este capítulo, analizaremos cómo crear una aplicación para UWP con .NET Core. UWP también se conoce como aplicación UWP de Windows 10. Esta aplicación no se ejecuta en versiones anteriores de Windows, solo se ejecutará en versiones futuras de Windows.

A continuación, se muestran algunas excepciones en las que UWP se ejecutará sin problemas.

  • Si desea ejecutarlo localmente, debe tener Windows 10, también puede desarrollar en Windows 8 y luego deberá ejecutarlo en Emulator, pero se recomienda usar Windows 10.

  • Para la aplicación para UWP, también necesitará el SDK de Windows 10. Abramos la configuración de Visual Studio 2015 y luego modifiquemos Visual Studio.

  • En la página de características seleccionadas, desplácese hacia abajo y verá Herramientas de desarrollo de aplicaciones universales de Windows, marque esa opción como se muestra a continuación.

Aquí puede ver las diferentes versiones de SDK y también la última actualización de Herramientas, haga clic en Siguiente.

Ahora, haga clic en el Install botón.

Una vez finalizada la instalación, deberá reiniciar su sistema.

Implementemos ahora la UWP siguiendo estos pasos.

  • Primero, inicie Visual Studio 2015.

  • Haga clic en el menú Archivo y seleccione Nuevo → Proyecto; Aparecerá un cuadro de diálogo Nuevo proyecto. Puede ver los diferentes tipos de plantillas en el panel izquierdo del cuadro de diálogo.

  • En el panel izquierdo, puede ver la vista de árbol, ahora seleccione Plantilla universal en Plantillas → Visual C # → Windows.

  • En el panel central, seleccione la plantilla Aplicación en blanco (Windows universal).

  • Dale un nombre al proyecto escribiendo UWPFirstApp en el campo Nombre y haga clic en Aceptar.

  • Aparece el cuadro de diálogo versión de destino / versión mínima. La configuración predeterminada está bien para este tutorial, así que seleccione Aceptar para crear el proyecto.

  • Aquí, tenemos un solo proyecto que puede apuntar a todos los dispositivos Windows 10, y notará que tanto .NET Core como UWP son una simplificación de la orientación múltiple.

  • Cuando se abre un nuevo proyecto, sus archivos se muestran en el lado derecho del panel Explorador de soluciones. Es posible que deba elegir la pestaña Explorador de soluciones en lugar de la pestaña Propiedades para ver sus archivos.

  • Aunque la aplicación en blanco (ventana universal) es una plantilla mínima, todavía contiene muchos archivos. Estos archivos son esenciales para todas las aplicaciones para UWP que usan C #. Cada proyecto que crea en Visual Studio contiene los archivos.

  • Para ver el ejemplo en ejecución, abramos MainPage.XAML y agreguemos el siguiente código.

<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>

A continuación se muestra el evento de clic del botón en 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"; 
      } 
   } 
}

Ejecutemos ahora el código anterior en la máquina local y verá la siguiente ventana. Ahora escriba cualquier nombre en el cuadro de texto y presione elClick Me botón.