位置: 编程技术 - 正文
推荐整理分享Windows 8技巧:Windows 8弹出提示框MessageDialog与awaitasync关键字应用技巧(win10win8),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:windows8使用技巧,windows8怎么使用,windows 8 1,windows 8 1,windows 8怎么样,window八,windows 8,windows 8 1,内容如对您有帮助,希望把文章链接给更多的朋友!
在以前Silverlight、WPF中的弹出窗口提示中是MessageBox类中进行显示的,现在Windows 8中使用Windows.UI.Popups命名空间下的MessageDialog类代替MessageBox。
MessageDialog类有以下常用方法和属性:
ShowAsync():异步弹出消息框.
Commands:添加命令,在弹出框界面上同步添加相应的按钮.
DefaultCommandIndex:设置默认按钮的索引,按ENTER键将激活该索引对应的命令按钮
CancelCommandIndex:设置取消退出按钮的索引,按ESC键将激活该索引对应的命令按钮
Title:弹出消息框的标题
async:用于方法申明时,此关键字是告诉编译器在这个方法体内可能会有await关键字。
await:用于异步操作时的模拟同步等待,声明有此关键字的异步操作需等待异步操作完成之后才继续往下运行,但是不会阻塞UI线程。
注意:使用await关键字的方法体,必须使用async声明方法
现在我们通过一个实例来看MessageDialog、async、await:复制代码代码如下:<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}"> <Button Content="First Msg" HorizontalAlignment="Left" Margin=",,0,0" VerticalAlignment="Top" Height="" Width="" Click="First_Click"/> <Button Content="Secend Msg" HorizontalAlignment="Left" Margin=",,0,0" VerticalAlignment="Top" Height="" Width="" Click="Secend_Click"/> <Button Content="Third Msg" HorizontalAlignment="Left" Margin=",,0,0" VerticalAlignment="Top" Height="" Width="" Click="Third_Click"/> <Button Content="Fourth Msg" HorizontalAlignment="Left" Margin=",,0,0" VerticalAlignment="Top" Height="" Width="" Click="Fourth_Click"/> <TextBlock HorizontalAlignment="Left" Name="tbText" Margin=",,0,0" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Top" Height="" Width="" FontSize=""/> </Grid> 一:最简单的MessageDialog复制代码代码如下: private async void First_Click(object sender, RoutedEventArgs e) { MessageDialog msg = new MessageDialog("Hello World!这是第一个提示."); msg.Title = "提示1"; var msginfo = await msg.ShowAsync(); }</p><p> 二:自定义命令集的消息框复制代码代码如下:private async void Secend_Click(object sender, RoutedEventArgs e) { MessageDialog msg1 = new MessageDialog("Hello World!这是第二个提示."); msg1.Title = "提示2"; msg1.Commands.Add(new UICommand("确定", command => { this.tbText.Text = "你点击了确定按钮,第二组提示"; })); msg1.Commands.Add(new UICommand("取消", command => { this.tbText.Text = "你点击了取消按钮,第二组提示"; })); var msg1info = await msg1.ShowAsync(); } 三:使用await模拟同步方式得到当前使用命令ID运行响应的代码段复制代码代码如下:private async void Third_Click(object sender, RoutedEventArgs e) { MessageDialog msg1 = new MessageDialog("Hello World!这是第三个提示."); msg1.Title = "提示3"; msg1.Commands.Add(new UICommand("确定", null, 0)); msg1.Commands.Add(new UICommand("取消", null, 1)); msg1.DefaultCommandIndex = 0; msg1.CancelCommandIndex = 1; var msg1info = await msg1.ShowAsync(); switch (Convert.ToInt(msg1info.Id)) { case 0 : this.tbText.Text = "你点击了确定按钮,第三组提示";break; case 1 : this.tbText.Text = "你点击了取消按钮,第三组提示";break; default: break; } } 四:将命令方法体单独出来写方法体复制代码代码如下: private async void Fourth_Click(object sender, RoutedEventArgs e) { MessageDialog msg1 = new MessageDialog("Hello World!这是第四个提示."); msg1.Title = "提示3"; msg1.Commands.Add(new UICommand("确定", new UICommandInvokedHandler(this.ShowTextEnter))); msg1.Commands.Add(new UICommand("取消", new UICommandInvokedHandler(this.ShowTextCancel))); msg1.DefaultCommandIndex = 0; msg1.CancelCommandIndex = 1; var msg1info = await msg1.ShowAsync(); } private void ShowTextEnter(IUICommand command) { this.tbText.Text = "你点击了确定按钮,第四组提示"; } private void ShowTextCancel(IUICommand command) { this.tbText.Text = "你点击了取消按钮,第四组提示"; }
最后我们来看运行效果如下图所示,如需源码请点击 Win8Message_gimoonet下载。
Windows 8技巧:Windows 8中的Popup使用方式介绍 在上一篇文章中我们将了替代Silverlight中MessageBox的MessageDialog控件,本篇文章将讲诉另外一种弹出提示窗口的控件Popup。一、我们认识Popup控件的IsLightDismiss
Windows 8技巧:Windows 8 中的三种进度条和两种定时器的使用技巧 在Windows8中的默认进度条也与时俱进,和之前Silverlight中的不一样。本文将讲述三种不同的进度条,另外在本文中也会将两种定时器。进度条主要属性:V
Windows 8技巧:Windows 8 中Slider控件与ToggleSwitch控件的使用方法 一:Silder控件是滑块控件,在Silverlight中也存在,其主要用于音量调节,亮度调节,色彩调节,温度计等。主要属性:FlowDirection:从左向右滑动或者从右向
标签: win10win8
本文链接地址:https://www.jiuchutong.com/biancheng/363778.html 转载请保留说明!上一篇:Windows 8技巧:Windows 8常用鼠标事件 分析介绍(windows 8whql)
友情链接: 武汉网站建设