WF4.0实战(九):猜数字游戏,测下你的智力

今天周末,用WF4.0写个小游戏,供大家娱乐一下。界面做的不是很美观,请见谅。

效果:

一运行程序,游戏就开始了。

WF4.0实战(九):猜数字游戏,测下你的智力

你输入一个数字4,提示“尝试输入一个较大的数字”,如下图:

WF4.0实战(九):猜数字游戏,测下你的智力 

你输入一个数字100,提示“尝试输入一个较小的数字”,如下图所示:

WF4.0实战(九):猜数字游戏,测下你的智力

你经过猜测之后,才对了结果,系统会给你智力的评价,如下图:

WF4.0实战(九):猜数字游戏,测下你的智力

如果你对结果不满意,你可以点击从新开始测试。

游戏将能力分为下面几等(纯属娱乐):

1、你的智商超越了爱因斯坦

2、你非常聪明

3、你比较聪明

4、你很正常

5、是火星来的,快回去吧,地球不适合你

实现:

1 、定义流程:

WF4.0实战(九):猜数字游戏,测下你的智力

2 、WPF宿主和WF数据交换实体:

WF4.0实战(九):猜数字游戏,测下你的智力
 1    public  class GuessingObject
 2     {
 3        //来自用户猜测的数字
 4        public int numberFromUser
 5        {
 6            get;
 7            set;
 8        }
 9        //来自WF的消息
10        public string messageFromWF
11        {
12            get;
13            set;
14        }
15        //游戏的时间
16        public int Second
17        {
18            get;
19            set;
20        }
21 
22     }
WF4.0实战(九):猜数字游戏,测下你的智力

3、等待用户输入活动:

WF4.0实战(九):猜数字游戏,测下你的智力
 1     public sealed class ReadLine : NativeActivity<GuessingObject>
 2     {        
 3         [RequiredArgument]
 4         public InArgument<string> BookmarkName { getset; }
 5 
 6         protected override bool CanInduceIdle
 7         {
 8             get
 9             {
10                 return true;
11             }
12         }
13 
14         protected override void Execute(NativeActivityContext context)
15         {
16             // bookmark creation
17             context.CreateBookmark(this.BookmarkName.Get(context), new BookmarkCallback(OnReadComplete));
18         }
19 
20         void OnReadComplete(NativeActivityContext context, Bookmark bookmark, object state)
21         {
22             GuessingObject input = state as GuessingObject;
23             context.SetValue(this.Result, input);
24         }
25     }
WF4.0实战(九):猜数字游戏,测下你的智力

代码:/Files/zhuqil/wfgame.rar




本文转自麒麟博客园博客,原文链接:http://www.cnblogs.com/zhuqil/archive/2010/04/24/wfgame.html,如需转载请自行联系原作者