创建你的第一个 UWP 应用程序
此示例演示如何开发简单的 UWP 应用程序。
在创建“空白应用程序(通用 Windows)”项目时,你的解决方案中会创建许多基本文件。
可以在解决方案资源管理器中查看项目中的所有文件。
你项目中的一些重要文件是:
- App.xaml 和 App.xaml.cs - App.xaml 用于声明应用程序中可用的资源,App.xaml.cs 是它的后端代码。App.xaml.cs 是应用程序的默认入口点
- MainPage.xaml - 这是应用程序的默认启动 UI 页面(你也可以在 App.xaml.cs 中更改应用程序启动页面)
- Package.appxmanifest - 此文件包含应用程序的重要信息,如显示名称,入口点,可视资产,功能列表,打包信息等。
入门
-
在页面上添加按钮
要向页面添加任何 UI 元素或工具,只需从左侧的工具箱窗口中拖放元素即可。在工具箱中搜索按钮工具并将其放入应用页面。
-
自定义 UI
特定工具的所有属性都显示在右下方的属性窗口中。
在这里,我们将按钮内的文字更改为“说出来!”。要执行此操作,请先按下按钮以选择它,然后滚动属性窗口以查找内容并将文本更改为所需的字符串(“说出来!”)。
我们还将更改页面的背景颜色。每个页面都有一个父元素(通常是一个网格),其中包含所有其他元素。因此,我们将更改父网格的颜色。要执行此操作,请点击网格,然后将 属性窗口中的“ 画笔”>背景 更改为所需的颜色。
在你自定义 UI 之后,UI 将看起来像这样。
https://i.stack.imgur.com/ERdyx.jpg
-
代码背后
现在让我们点击我们的按钮吧!
单击按钮会触发事件,我们需要处理事件以在单击按钮时执行一些有用的操作。
添加事件处理程序
要向按钮添加单击事件处理程序,请选择按钮,转到属性窗口并选择闪电图标。此窗口包含我们选择的元素可用的所有事件(在我们的示例中为按钮)。接下来,双击
Click
事件旁边的文本框,自动生成按钮单击事件的处理程序。
https://i.stack.imgur.com/q7ySF.jpg
在此之后,你将被重定向到 aC#page(MainPage.xaml.cs)
。将以下代码添加到事件处理程序方法:
MediaElement mediaElement = new MediaElement();
var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer();
Windows.Media.SpeechSynthesis.SpeechSynthesisStream stream = await synth.SynthesizeTextToStreamAsync("Hello, World!");
mediaElement.SetSource(stream, stream.ContentType);
mediaElement.Play();
接下来,将 async 关键字添加到事件处理程序。
添加上面的代码后,你的类应该如下所示:
public sealed partial class MainPage : Page
{
string speakIt = "Hello, World!";
public MainPage()
{
this.InitializeComponent();
}
private async void button_Click(object sender, RoutedEventArgs e)
{
MediaElement mediaElement = new MediaElement();
var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer();
Windows.Media.SpeechSynthesis.SpeechSynthesisStream stream = await synth.SynthesizeTextToStreamAsync(speakIt);
mediaElement.SetSource(stream, stream.ContentType);
mediaElement.Play();
}
}
-
启动你的应用!
你的应用程序已准备好启动。你可以通过按 F5 或选择要部署和调试应用程序的设备来启动应用程序,然后单击开始按钮。
https://i.stack.imgur.com/lrzTl.jpg
构建完成后,你的应用程序将部署到你的设备上。根据设备的分辨率和屏幕大小,应用程序将自动配置其布局。 (你可以调整窗口大小以查看其无缝工作方式) https://i.stack.imgur.com/Y0FDo.jpg
-
走得更远
既然你已经完成了第一次申请,那就让我们更进一步吧!
在页面中添加一个文本框,单击该按钮,应用程序将说出文本框中写入的内容。
首先将 TextBox 控件从工具箱拖放到布局中。接下来,从属性菜单中为 TextBox 命名。 (为什么我们需要指定一个名称?这样我们就可以轻松使用这个控件了)
默认情况下,Visual Studio 会为你的控件命名,但根据他们的操作或相关内容命名控件是一个好习惯。
我正在命名我的文本框 - “ speakText ”。
private async void button_Click(object sender, RoutedEventArgs e)
{
//checking if the text provided in the textbox is null or whitespace
if (!string.IsNullOrWhiteSpace(speakText.Text))
speakIt = speakText.Text;
else
speakIt = "Please enter a valid string!";
MediaElement mediaElement = new MediaElement();
var synth = new Windows.Media.SpeechSynthesis.SpeechSynthesizer();
Windows.Media.SpeechSynthesis.SpeechSynthesisStream stream = await synth.SynthesizeTextToStreamAsync(speakIt);
mediaElement.SetSource(stream, stream.ContentType);
mediaElement.Play();
}
现在部署你的代码!
你的应用程序现在可以说出你提供给它的任何有效字符串! https://i.stack.imgur.com/cpveX.jpg
恭喜! 你已经成功构建了自己的 UWP 应用程序!