Windows phone 北京地铁软件实现
北京的地铁线路又增加了几条,无奈windows phone的软件更新实在不给力,很多线路都没有。那只能自己做一个了。做好的效果如下图:
代码下载:http://files.cnblogs.com/infly123/PhoneSubWay.rar
软件说明:
开发工具:visual studio 2010 其中弹出框用了Codig4Fun第三方控件。
支持拖拽地图位置、查询站点位置、查询所有线路和所有站点、缩放地图大小等功能。
地铁的线路及站点信息存放在XML文件中,若增加了新的线路,则在XML中增加新线路及所有站点信息即可,软件可自动在界面中画出新的线路。
主要代码说明:
1.XML文件:<Lines>节点声明了所有的地铁线路及颜色,<Nodes>包括站点名称、站点坐标、所属线路信息。
<SubWay><Lines><Line Name="1号线" Color="255, 255, 0, 0" /><Line Name="2号线" Color="255, 0, 104, 183" /><Line Name="4号线" Color="255, 0, 255, 255" /><.....></Lines><Nodes Name="4号线"><Node Name="安河桥北" X="-15" Y="450" LineName="4号线"></Node><Node Name="北宫门" X="50" Y="450" LineName="4号线"></Node><Node Name="西苑" X="115" Y="450" LineName="4号线"><.....></Nodes Name="4号线"> </Lines>
2.数据的读取:
颜色的读取:
/// <summary>/// 将Xml中的Color的字符串描述转换为Color类型/// </summary>/// <param name="s"></param>/// <returns></returns>public Color GetColor(string s){byte b1 = byte.Parse(s.Split(',')[0]);byte b2 = byte.Parse(s.Split(',')[1]);byte b3 = byte.Parse(s.Split(',')[2]);byte b4 = byte.Parse(s.Split(',')[3]);Color myColor = Color.FromArgb(b1, b2, b3, b4);return myColor;}
站点信息的读取:(用了Linq,其中SubNode为站点类,包括站点名称Name,站点坐标Point,站点所属节点LineName)
//获取站点集合var nodes = from s in root.Elements("Nodes").Elements("Node")select new SubNode {Name = s.Attribute("Name").Value,Point=new Point(double.Parse( s.Attribute("X").Value),double.Parse( s.Attribute("Y").Value)),LineName=s.Attribute("LineName").Value};ListSubNode = nodes.ToList<SubNode>();
3.查看所有线路及其包含的站点:这里将地铁集合与控件进行了绑定,并且显示信息为站点名称
<ComboBox x:Name="cobLine" ItemsSource="{Binding}" Margin="12,12,295,29" SelectionChanged="cobLine_SelectionChanged"><ComboBox.ItemTemplate><DataTemplate><TextBlock Text="{Binding Name}"></TextBlock></DataTemplate></ComboBox.ItemTemplate></ComboBox>
最后:
软件还有很多不足之处,由于时间仓促很多地方的实现方法并不是很好,比如弹出窗体搜索站点中我想使用AutoCompleteBox实现智能提示,但受Codig4Fun控件的限制效果并不好(这个我放在了"设置"中);缩放地图后再查询某个站点定位会不准确;没法根据布局单独设置某个站点名称的显示位置等
本人大四,热爱编程,欢迎.net及其他方向的程序员一起交流一起进步,欢迎加我qq:1241311001
转载于:https://www.cnblogs.com/infly123/archive/2013/05/25/3099330.html
Windows phone 北京地铁软件实现相关推荐
- 337个人写了一封信,然后北京地铁有了无障碍地图
一个月前,橙子的好朋友,高德地图的小伙伴收到了一封信,上面密密麻麻地写了337位残障年轻人的名字. "有时候,我们按照地图导航软件的指引来到了地铁口,却发现没有直梯,我们下不去.有时候,我们 ...
- 地铁逃生的服务器正在维护吗,LifeKeeper为北京地铁保护维护系统
SteelEye与阿尔斯通日前联合宣布,将部署SteelEye® LifeKeeper® for Linux,为北京地铁2号线维护系统服务中的关键应用提供保护.地铁2号线是连接北京市郊的快速轨道交通网 ...
- 系统的基本组成;中文Windows操作系统;字处理软件Word;电子表格软
<计算机文化基础>系高职高专计算机系列教材之一,根据教育部最新制定的<高职高专教育计算机公共基础课程教学基本要求>,针对微型计算机及其软件的最新发展,主要介绍了计算机基础知识: ...
- 双向广搜的DIJKSTRA算法--简易的北京地铁导航实现
本学期的课程设计,实现最短路的算法,于是采用了DIJKSTRA算法,并用双向广搜优化了. 实现了简易的北京地铁导航.于是把代码分享出来. (核心代码是find_min(),Dijkstra()部分) ...
- Project 2 : 北京地铁数据处理及路径探寻
完成北京地铁路线搜寻 使用搜寻策略完成如下项目:接收两个北京地铁站站点,得到两个站点间的优化路径. Please using the search policy to implement an age ...
- 控件无法安装,windows已经阻止此软件因为无法验证发行者
1.一般情况下,浏览器会自动加载控件,从浏览器上方可以看到提示,如下图: 2.这时候,单击控件栏,选择"安装ActiveX控件",正常情况下,可以成功安装控件.如果因为" ...
- python自动控制windows、Android的软件用来实现机器人流程自动化--RPA,外挂、自动化测试等方面的解决方案
python自动控制windows.Android的软件用来实现机器人流程自动化--RPA,外挂.自动化测试等方面的解决方案 参考文章: (1)python自动控制windows.Android的软件 ...
- 3天初版部署7天快速迭代!百度飞桨携手北京地铁落地AI口罩检测方案
允中 发自 凹非寺 量子位 报道 | 公众号 QbitAI 百度AI抗疫,又有新方案部署落地.这次,事关企业复工后,持续升级的公共交通防疫战. 近日,针对北京地铁防疫需求,百度与北京地铁合作开展了A ...
- 正版python软件多少钱-北京正版软件SeismoSelect 价目表
北京正版软件SeismoSelect 价目表 [srhjhg] 在企业里,晋升.加薪的人,总是少数的.即便你看过很多"职场"故事,从普通员工三年逆袭成为部门总监或总裁,每当看到这些 ...
最新文章
- 深入探索 Java 热部署--转
- mysql过滤器_MYSQL复制过滤器
- Java中三种字符串的拼接(++ , String.format , StringBuilder.append)
- 解决wordcloud显示中文为空格(空白)
- 语音识别中的MFCC的提取原理和MATLAB实现
- 搜索树判断 (25 分)(先序建立二叉树)
- mysql常见排错_mysql 一些排错技巧
- 发现一个Java文件.class在线反编译的简单好用的网址
- 计算机与软件水平考试中级,2020年计算机软件水平考试可以直接考中级吗
- Activemq 下载地址
- Flash 原版官网下载
- 一个高考落榜生的奋斗历程
- csdn发文——Markdown编辑器
- 数字身份的万亿市场之争才刚开始
- python中flatten_Python中flatten( ),matrix.A用法说明
- 线程同步(临界区、互斥量、事件、信号量)
- javascript国际化_如何在JavaScript中实现国际化(i18n)
- 一个向上帝买了挂的男人
- H5移动端项目实现手写签名功能 vue实现手写签名
- 2015-2:新手入门之菜鸟也要用kali
热门文章
- 收藏一首好诗 《论孩子》纪伯伦(黎巴嫩) 冰心译
- 1990-2021年全国各省外商直接投资水平
- 阿里云推出网盘App,开放申请!非会员下载 10MB/s! 没想到还有更牛逼的:60M/s...
- 【世界读书日】2023年通信好书推荐
- gettimeofday/clock_gettime
- PHP加密时遇到try错误,深入学习PHP错误与异常处理
- linux sipp 呼叫转移_开源VoIP/电话 - linux学习笔记 - CSDN博客
- 计算机辅助制造中构图面,1试卷 计算机辅助制造技术
- 行为恶劣的U盘病毒OSO.exe分析与查杀
- swift3新路程(11)错误处理(Error Handling)