Silverlight+WCF 新手实例 象棋 游戏房间列表(十三)
热到飚血了。。。
上次创建了一房间了,现在要创建多个房间了。
我们像添加一个Chess类来创建很多棋子一样,现在创建一个Game类来创建很多房间:
Code文件夹右键,添加新建项->类->Game.cs,同样的,名称空间去掉[.Code]
{
/// <summary>
/// 游戏 by 路过秋天
/// </summary>
public class Game
{
}
}
先上一个房间列表的属性:
{
get;
set;
}
接下来就是一个创建房间的方法了:
{
GameRoomList = new List<GameRoom>();
int margin = 40;
int GameRoomWidth = 120;
int pageWidth = 800;
int x = 0, y = 0;
Point location;
for (int i = 0; i < count; i++)
{
//计算房间位置
x = i % (pageWidth / GameRoomWidth) * GameRoomWidth + margin + i % (pageWidth / GameRoomWidth) * 20;
y = (i / (pageWidth / GameRoomWidth)) * GameRoomWidth + margin;
location = new Point(x, y);
GameRoom GameRoom = new GameRoom(i + 1, location, GameRoomWidth);
GameRoomList.Add(GameRoom);
}
}
public void DrawIn(Panel control)
{
for (int i = 0; i < GameRoomList.Count; i++)
{
GameRoomList[i].DrawIn(control);
}
}
由于我们设置了页面总宽为800,我们需要到Room.xaml设置一下Canvas的宽和高:
</Grid>
OK,现在我们回到Room.xaml.cs代码里,创建30个房间:
{
public Room()
{
InitializeComponent();
//GameRoom gameRoom = new GameRoom(1, new Point(0,0), 120);
//gameRoom.DrawIn(LayoutRoot);
Game game = new Game();
game.CreateGameRoom(30);
game.DrawIn(LayoutRoot);
}
}
运行F5,看下效果:
怎么全挤在一堆了,我查了查,调了调,又比较了一下,发现:
原来Grid布局和Canvas布局的区别。
因此,把Grid标签换成Canvas标签就行了:
</Canvas>
OK,再F5运行,房间正常了:
OK,列表出来了。
下一节开始要讲WCF通讯,同时后面章节会对之前的很多代码会做调整与补充。
现在提供第3部分代码:点此下载
转载于:https://www.cnblogs.com/cyq1162/archive/2010/07/12/1775774.html
Silverlight+WCF 新手实例 象棋 游戏房间列表(十三)相关推荐
- Silverlight+WCF 新手实例 象棋 主界面-实时聊天区(二十五)
在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 演示已更新到此节介绍:Silverlight+WCF 新手实例 象棋 介绍III(二十三) 本节连着Silverlight+WC ...
- Silverlight+WCF 新手实例 象棋 主界面-棋谱-获取列表(三十八)
2019独角兽企业重金招聘Python工程师标准>>> 在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 在Silverlight+WCF 新手实例 象棋 主界 ...
- Silverlight+WCF 新手实例 象棋 该谁下棋-B下A停(三十)
2019独角兽企业重金招聘Python工程师标准>>> 在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 上上一节,就是二十八节:Silverlight+WCF ...
- Silverlight+WCF 新手实例 象棋 主界面-事件区-返回退出(三十三)
在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 还是那张图: 本节实现返回大厅和退出系统: 一:返回大厅,其实很简单的说,就是转向房间列表了. 可是,转向前也有很多事情要处理的 ...
- Silverlight+WCF 新手实例 象棋 主界面-事件区-求和认输(三十二)
在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 事隔几篇,我们又回到事件区,继续其它两个按钮事件,来张图吧: 在Silverlight+WCF 新手实例 象棋 主界面-事件区- ...
- Silverlight+WCF 新手实例 象棋 主界面-棋谱-回放-结局(四十)
在线演示地址: Silverlight+WCF 新手实例 象棋 在线演示 在Silverlight+WCF 新手实例 象棋 主界面-棋谱-回放(三十九)中,我们实现了用户的棋谱回放,在文章的下面,我们 ...
- Silverlight+WCF 新手实例 象棋 主界面-棋谱-回放(三十九)
在线演示地址:Silverlight+WCF 新手实例 象棋 在线演示 本节完后,同时会更新Silverlight+WCF 新手实例 象棋 专题索引,并顺路提供第八阶段源码 在Silverlight+ ...
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[附加上半盘限制](十)
上上一节,我们对棋子的下半盘棋子做了所有的规则限制,因为我们下棋的总是用下半盘的棋子来下,总没人用上半盘棋来下那么高境界的吧. 不过这节简单追加点代码,让那些企图高境界的人士可以临时性的自己和自己下. ...
- Silverlight+WCF 新手实例 象棋 棋盘(二)
2019独角兽企业重金招聘Python工程师标准>>> 1.先新建一个和棋子相关的类库 打开VS2010后->新建->项目->Silverlight类库,名称就定为 ...
最新文章
- 疫情期间自我提升指南:十大资源,为你铺平数据科学家之路!
- SPOJ - BITDIFF: Bit Difference [神妙の预处理]
- ruby中DBI连接MySQL数据库步骤详解
- 关于应用程序启动,你可能不知道的东西
- 简单支付验证(SPV)与创新
- NumPy 百题大冲关,冲鸭!
- Scribefire发CSDN博客
- 【CodeForces - 864C】Bus (模拟,有坑)
- 【剑指offer】面试题63:股票的最大利润(Java)
- 和整数相乘_小学数学基础概念归纳总结:整数篇
- wifi 2.4g 5g 区别_关于路由器的2.4G以及5G,你不知道的那些事
- 浅谈java 之 Map
- paip.提升效率---源码生成流程图工具
- java下载不了怎么_如何下载和安装Java
- 外汇EA真的有用吗?外汇EA如何设置
- Android Unable to execute dex: method ID not in [0, 0xffff]: 65536 问题解决方法
- 【心理咨询师考试笔记】操作技能(四)——心理咨询方法
- MATLAB的画家之旅
- 拼团系统开发|全民拼购商业模式解读
- 快问快答,MySQL面试夺命20问
热门文章
- leetcode —— 513. 找树左下角的值
- leetcode - 1201. 丑数 III
- Matlab将多个柱形图放于一个图中
- 消息中间件的技术选型心得-RabbitMQ ActiveMQ和ZeroMQ
- [git] 基础操作-02 分支和主支合并
- 【读书笔记0102】Beginning linux programming-3rd
- intel编译器_试试吧!用 Go 写一个即时编译器(JIT)
- n1运行linux,斐讯 N1 运行 ArchLinuxARM
- python什么时候用进程什么时候用线程_Python多线程/多进程释疑:为啥、何时、怎么用?...
- 如何用python写数值运算_如何理解Python的数值运算?