zoukankan      html  css  js  c++  java
  • (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的项目,我们希望更多的开发者拓展这款游戏。

  • 相关阅读:
    gridview把textbox的值修改还是旧值的解决方法
    [转载]FMS Dev Guide学习笔记(验证客户端二)
    推荐几个Adobe Flex Builder 3的插件(代码格式化和fms服务器通讯文件(main.asc)编写)
    淘宝装修新旺铺如何让店招导航栏透明?
    淘宝店面怎么装修(不花分毫,玩转淘宝)
    教你处理明暗不匀的宝贝照片
    淘宝店铺装修 免费扶植版教程
    淘宝店铺(宝贝描述模板)克隆攻略
    如何用淘宝助理上传宝贝装修模板
    淘宝商城推广方案书
  • 原文地址:https://www.cnblogs.com/shenyuelong/p/4525587.html
Copyright © 2011-2022 走看看