开发学院

您的位置:首页>教程>正文

教程正文

.NET Core 创建UWP程序

   在本章中,我们将讨论如何使用.NET Core创建UWP应用程序。UWP是Universal Windows Platform的简称,即Windows通用应用平台。UWP是新一代的可以跨设备的应用,也就是说,你开发了一个版本的UWP程序,就可以同时在允许win10的pc、手机、智能设备甚至游戏机上运行。

以下是UWP的必要条件。

  如果你想在本地运行它,你必须安装Windows 10或者更新的操作系统,当然你也可以在Windows 8上进行开发,然后你需要在模拟器上运行它,所以强烈建议使用Windows 10。

  对于UWP应用开发,你需要安装通用Windows平台开发模块,如果你安装Visual Studio 2017的时候没有勾选它,那么需要打开Visual Studio程序来安装它。

dotnet-000.png

  勾选“通用Windows平台开发”,点击右下角的确认按钮即可。

dotnet-001.png

  等待安装结束,重新启动Visual Studio,然后新建项目就可以看到相应的选项了。

dotnet-002.jpg

  我们创建一个空白的UWP程序,项目名字设置为UWPFirstApp,创建的时候还需要指定UWP程序的版本,根据需要指定即可。

dotnet-003.jpg

  要查看运行示例,让我们打开MainPage.XAML并添加以下代码。

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

  下面是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;


namespace UWPFirstApp
{
    /// <summary>
    /// 可用于自身或导航至 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";
        }
    }
}

  在本地计算机上运行上述代码,将看到以下窗口。在文本框中键入任何名称,然后按“Click Me”按钮,你就可以看到反馈。

dotnet-004.jpg