(9)开发的第一个项目

近期用C#开发了一个小的东西,甚至不能叫工程吧,但是我们做出了3个版本的,还是有点小骄傲的。下面我介绍下:

这是个小游戏,名字叫调皮蛋(Naughty egg),游戏规则非常简单,你的屏幕会响应你的拖动事件,你要避免红色加深,促进绿色加深,来赢取游戏。但是到第三关你就会发现惊喜!

在开发的时候我们也为了一些东西感到困扰,比如控件之间的数据绑定直接在XAML里面就能完成,但是事件的数据要绑定到控件上有点小绕弯子,网上这方面的资料也少,这里我贴一下自己的解决方法,可能很笨,但好在管用。

//数据绑定
        public class ModelBase : INotifyPropertyChanged
        {
            public event PropertyChangedEventHandler PropertyChanged;
            public void OnPropertyChanged(string propertyName)
            {
                if (PropertyChanged != null)
                {
                    PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
                }
            }
        }
        public class xue : ModelBase
        {
            private int hp;
            public int HP
            {
                get { return hp; }
                set { hp = value; OnPropertyChanged("HP"); }
            }
        }

//数据绑定

我首先创建一个接口于INotifyPropertyChanged的基类ModelBase,便于代码的复用。用的时候new一个xue的实例,其中的变量HP已经有绑定的特性。时间响应函数里面只需要改变HP的值就行了,控件里面可以在XAML里面实现:

这样就基本完成了。

说句实在话,WP和Wstore版本的代码基本上一样,直接复制粘贴,需要注意的是屏幕的自适应。上面所说的数据绑定可以完全移植过去,还有就是实现页面的跳转实在太简单了,只要一句话的事,这点java不能比的。在Wp里面拖拽函数有几个,我们选择了最稳定的一个,跟随手指最合适的一个:

private void finger_PointerMoved(object sender, PointerRoutedEventArgs e)
        {
            Point p = e.GetCurrentPoint(circle).Position;
            Point p2 = e.GetCurrentPoint(rect1).Position;
            mousepoint = e.GetCurrentPoint(circle).Position;
            if (pushDown) {
            if (tag == 0)
            {
                rect1.Fill = new SolidColorBrush(Colors.Red); //矩形的填充颜色为红色!
                changecolor(p2);
            }
            else
            {
                changecolor2(p2);
                rect1.Fill = new SolidColorBrush(Colors.Green); //矩形的填充颜色为绿色!
            }
            }
        }

还有WP中应用的4个基本状态,处理程序的逻辑时大家要注意了,这里不再赘述。下面是程序的一些效果图:

程序的源代码我们整理好后,会放到论坛,作为open source的项目,我们希望更多的开发者拓展这款游戏。

时间: 2024-11-05 17:34:17

(9)开发的第一个项目的相关文章

第一章 项目背景【制作属于自己的wmts服务多源空间数据服务整合开发--减少项目成本让客户更放心】

     最近项目中遇到了基于skyline 加载离线地图的这样的工作.针对这个问题找了好多的解决方案都没有能够解决.最后因缘巧合的想到了一个构建本地wmts服务[skyline6.5以上的版本支持].通过网上大量的浏览搜索资料.找了一些开源的项目.终于把问题给解决了. 1.数据的离线下载 开发的工具支持谷歌.必应.天地图.高德等等互联网上的数据的下载然后数据重组整合多源的数据整合发布为wmts. 支持 对arcgis发布的wms rest  title.image等格式的服务代理转换为wm

ASP.NET 5 入门(1) - 建立和开发ASP.NET 5 项目

ASP.NET入门(1) - 建立和开发ASP.NET 5 项目 建立项目 首先,目前只有VS 2015支持开发最新的ASP.NET 5 程序,所以我们首先需要下载安装其最新的RC版本. https://www.visualstudio.com/en-us/downloads/visual-studio-2015-downloads-vs.aspx 安装完毕以后,打开并建立新的Web Application项目: 然后在后一个界面中选择ASP.NET 5 Empty模板: 这里提2个注意点: 要

django第一个项目

创建第一个项目 使用 django-admin.py 来创建 dalilala项目: django-admin.py startproject dalilala 创建完成后我们可以查看下项目的目录结构: $ cd dalilala/$ tree.|-- HelloWorld|   |-- __init__.py|   |-- settings.py|   |-- urls.py|   `-- wsgi.py`-- manage.py 目录说明: Dalilala: 项目的容器. manage.p

.Net程序员玩转Android开发---(2)Hello World项目创建

对于程序员来说,刚开始接触到的第一个项目都是Hello World, 我们这里第一个项目也从Hello Word创建. 1. 项目创建 运行eclipse.exe文件,打开开发工具eclipse,选择项目存放位置,界面如下 打开eclipse后,选择 file-new--Android Applicaton Project创建Android项目,界面如下 步骤如下 2.

极速微信小程序开发,第一天

收到xx平台的合同确认的短信后,下午把手上的事情理完后.Get一项新技能之前和微信相关的单都是转出去给人家做,许久没有打代码了,前端的技术也忘的差不多了.还好现在项目选型的时候,通过讨论最终明确下来,采用时下流行的框架.如Vue,Angural,后端采用了go语言 一直认为微信就是js调用接口的玩意,使用微信封装好的公共方法来快速开发微信网站及小程序.看官们不要相信我的片面之词 还是从先从微信官方指引入手,第一感觉内容很简洁,配上了图,理解起来就更方便了. 今天我主要回顾一下,为了快速消化这个单

[Asp.net MVC]Asp.net MVC5系列——第一个项目

目录 概述 创建第一个项目 添加控制器 总结 概述 本教程是个人一步一步学习的总结,希望能帮到正在进入ASP.Net MVC5方向的朋友,个人也是准备进入ASP.NET MVC5领域,虽然艰辛,但是乐此不彼.谁让咱喜欢编程呢?之前接触过ASP.NET MVC4,今天在看发现差别还是有的,不管是使用IDE创建方式,还是使用方式有些地方的确不一样了.手上也没有ASP.NET MVC5的教程,只能看着英文网站,一步一步摸索了.其实我是一直想使用mvc,可事与愿违啊,到目前还是使用的webform. 创

java开源框架SpringSide 3.1.4.3开发Web的demo项目实战

原创整理不易,转载请注明出处:java开源框架SpringSide 3.1.4.3开发Web的demo项目实战 代码下载地址:http://www.zuidaima.com/share/1781596496120832.htm SpringSide 3.1.4.3是目前SpringSide的最新版本,也是完成度比较高的一个版本,用来做实际项目的开发应该丝毫不成问题.这里写一下使用该版本开发一个简单Web项目的全过程,当然,最重要的是我自己的一些心得体会.我的文章很长,只有耐下性子细看,才能体会个

<转>从Java转iOS第一个项目总结

从Java转iOS第一个项目总结 阅读目录 0.前言 1.项目介绍 2.项目使用的第三方开源库 3.工具和插件介绍 4.集成友盟 5.即时通讯 6.项目总结 0.前言 本人14年12月份,从网站开发组转到了移动开发组,自己的java两年半工作经验变成了object-c零经验.2015年1月份新启动了一个移动项目,年后因为人事变动,自己从辅助开发变成了"核心"开发,目前项目基本接近尾声,下面进行总结,希望对一些人能有帮助, 另外也希望ios大牛进行指导 回到顶部 1.项目介绍 项目属于一

小喵iOS开发成长记:项目开发规划索引

小喵近期在做一个小组项目.尽管还是小白,但小喵还是被赋予了组长这个“光荣”的职位. 酱紫开始了我的第一次带项目生涯--- 下面是此次项目的开发流程规划.当作一个目录用.在每个分支下遇到的问题或者研究了新的东西,都会设置索引点进去.所以大家可以收藏下篇博文哦--喵呜- 项目开发记录表 第一天 上午 (7月13日) 定项目,项目分工                                                                 第一天 下午 抓接口 (paros软件的