Windows Phone 7 Coding4Fun的弹出框

简介:

用Windows Phone 7的MessageBox弹出框,总觉得不是很过瘾,最近用了Coding4Fun组件提供了弹出框,感觉挺不错的,很好用,在这里推广一下。Coding4Fun开源组件的下载地址:http://coding4fun.codeplex.com/ ,里面有Demo。里面还有其他的一些控件也挺不错的。

里面有5种不同类型的弹窗

1.ToastPrompt:土司弹出框,类似于土司推送通知一样的显示效果,在屏幕上面出现一条消息,然后再消失。

使用语法

 


 
 
  1. private void Toast_Click(object sender, RoutedEventArgs e)  
  2.         {  
  3.             var toast = new ToastPrompt {  
  4.                 Title = "Basic",  
  5.                 Message = ToastLongMsg,  
  6.             };  
  7.             toast.Show();  
  8.         } 

 

2. AboutPrompt:说明弹出框,特点是弹出框会在屏幕中间,其他的弹出框是在屏幕的上方。
使用的语法:

 


 
 
  1. private void About_Click(object sender, RoutedEventArgs e)  
  2.         {  
  3.             var about = new AboutPrompt();  
  4.             about.Completed += baseObject_Completed;  
  5.             about.Show();  
  6.         }  
  7.  
  8.         void baseObject_Completed(object sender, PopUpEventArgs<object, PopUpResult> e)  
  9.         {  
  10.             if (e.PopUpResult == PopUpResult.Ok)  
  11.                 MessageBox.Show("OK!");  
  12.             else if (e.PopUpResult == PopUpResult.Cancelled)  
  13.                 MessageBox.Show("CANCELLED!");  
  14.             else  
  15.                 MessageBox.Show("meh?");  
  16.         } 

3.PasswordInputPrompt:密码输入弹出框,用于输入密码信息。

 


 
 
  1. private void Password_Click(object sender, RoutedEventArgs e)  
  2.         {  
  3.             var passwordInput = new PasswordInputPrompt  
  4.             {  
  5.                 Title = "Basic Input",  
  6.                 Message = "I'm a basic input prompt",  
  7.             };  
  8.             passwordInput.Completed += input_Completed;  
  9.  
  10.             passwordInput.Show();  
  11.         }  
  12.  
  13.         void input_Completed(object sender, PopUpEventArgs<string, PopUpResult> e)  
  14.         {  
  15.             if (e.PopUpResult == PopUpResult.Ok)  
  16.                 MessageBox.Show("You typed: " + e.Result);  
  17.             else if (e.PopUpResult == PopUpResult.Cancelled)  
  18.                 MessageBox.Show("CANCELLED! " + e.Result);  
  19.             else  
  20.                 MessageBox.Show("meh?  " + e.Result);  
  21.         } 

4.InputPrompt:输入弹出框,用于t弹出输入框输入其他的信息。

 


 
 
  1. private void Input_Click(object sender, RoutedEventArgs e)  
  2.         {  
  3.             var input = new InputPrompt  
  4.                             {  
  5.                                 Title = "Basic Input",  
  6.                                 Message = "I'm a basic input prompt",  
  7.                             };  
  8.             input.Completed += input_Completed;  
  9.               
  10.             input.Show();  
  11.         }  
  12.  
  13.         void input_Completed(object sender, PopUpEventArgs<string, PopUpResult> e)  
  14.         {  
  15.             if (e.PopUpResult == PopUpResult.Ok)  
  16.                 MessageBox.Show("You typed: " + e.Result);  
  17.             else if (e.PopUpResult == PopUpResult.Cancelled)  
  18.                 MessageBox.Show("CANCELLED! " + e.Result);  
  19.             else  
  20.                 MessageBox.Show("meh?  " + e.Result);  
  21.         } 

5.MessagePrompt:消息弹出框,普通的消息弹出框,类似于系统默认的messagebox弹出框。


 
 
  1. private void Message_Click(object sender, RoutedEventArgs e)  
  2.         {  
  3.             var messagePrompt = new MessagePrompt  
  4.             {  
  5.                 Title = "Basic Message",  
  6.                 Message = "I'm a basic message prompt.  ",  
  7.             };  
  8.             messagePrompt.Completed += stringObject_Completed;  
  9.  
  10.             messagePrompt.Show();  
  11.         }  
  12.  
  13.         void stringObject_Completed(object sender, PopUpEventArgs<string, PopUpResult> e)  
  14.         {  
  15.             if (e.PopUpResult == PopUpResult.Ok)  
  16.                 MessageBox.Show("OK: " + e.Result);  
  17.             else if (e.PopUpResult == PopUpResult.Cancelled)  
  18.                 MessageBox.Show("CANCELLED: " + e.Result);  
  19.             else  
  20.                 MessageBox.Show("meh?: " + e.Result);  
  21.         } 

 

下面这张图片基本上已经很形象地说明了这个控件的属性的含义了。

 

 

 

该弹出框控件支持在弹窗内嵌入XAML文件
把表示 XAML控件页面的类赋值到Body属性里面
messagePrompt.Body =new BodyUserControl();
再放点美图出来欣赏一下

 

 

 

最后面还有一篇美文来参考:
http://www.windowsphonegeek.com/articles/Coding4Fun-WP7-Message-Prompt-in-depth

 

本文转自linzheng 51CTO博客,原文链接:http://blog.51cto.com/linzheng/1078556

相关文章
|
Android开发 iOS开发 Windows
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
不久前,随着最后一家WP手机厂商惠普宣布取消今后Windows Phone的研发计划,以及微软官方声明对WP8.1系统今后所有升级维护的终止,WP手机,作为曾经和安卓手机、苹果手机并驾齐驱的三大智能手机之一,正式寿终正寝。
1984 0
Windows Phone 寿终正寝了,这些经典机型你还记得吗?
|
XML 开发框架 前端开发
Windows Phone快速入门需掌握哪些能力
在此之前,先普及下Windows Phone的概念和开发工具的介绍。 Windows Phone是微软公司开发的手机操作系统,它将微软旗下的Xbox Live游戏、Xbox Music音乐与独特的视频体验集成至手机中。2012年6月21日,微软正式发布Windows Phone 8,采用和Windows 8相同的Windows NT内核,同时也针对市场的Windows Phone 7.5发布Windows Phone 7.8。
385 0
Windows Phone快速入门需掌握哪些能力
|
移动开发 Android开发 开发者
Windows Phone 8.1 新功能汇总 开发者预览版开放下载
在Build 2014大会上,微软正式发布了传闻已久的Windows Phone 8.1系统,所有的Windows Phone 8手机都可以升级,微软这次可谓是十分厚道。虽然并非迭代升级,但WP 8.1还是拥有很多重大更新,对于微软进一步完善移动平台拥有积极的意义。下面,就一起来了解一下WP 8.1的主要新特性。
435 0
Windows Phone 8.1 新功能汇总 开发者预览版开放下载
|
编解码 前端开发 JavaScript
Windows Phone 下开发 LBS 应用
基于位置的服务(Location Based Service,LBS),它是通过电信移动运营商的无线电通讯网络(如GSM网、CDMA网)或外部定位方式(如GPS)获取移动终端用户的位置信息(地理坐标,或大地坐标),在GIS(Geographic Information System,地理信息系统)平台的支持下,为用户提供相应服务的一种增值业务。
452 0