码迷,mamicode.com
首页 > 其他好文 > 详细

wpf在线天气

时间:2014-07-22 22:32:33      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   文件   io   

桌面小工具-在线天气-C#(Wpf)-WebService

效果图,初步的窗体就是这样

bubuko.com,布布扣

鼠标放在天气图标上

bubuko.com,布布扣

WebService:http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx

需要注意:

WeatherWS返回的是string数组操作性太差所以将其转换成一个自定义的类

  public class WeatherInfo
    {
        public string Province { get; set; }
        public string City { get; set; }
        public string CityID { get; set; }
        /// <summary>
        /// 最近更新时间
        /// </summary>
        public string UpdateTime { get; set; }
        /// <summary>
        /// 天气实况
        /// </summary>
        public string METAR { get; set; }
        /// <summary>
        /// 空气质量
        /// </summary>
        public string AQI { get; set; }
        /// <summary>
        /// 生活指数
        /// </summary>
        public string COCOLON { get; set; }
        /// <summary>
        /// 未来天气
        /// </summary>
        public List<WeatherDay> FutureWeather{get;set;}
    }

    public class WeatherDay
    {
        /// <summary>
        /// 天气概况
        /// </summary>
        public string Weather { get; set; }
        /// <summary>
        /// 气温
        /// </summary>
        public string Temperature { get; set; }
        /// <summary>
        /// 风向
        /// </summary>
        public string Wind { get; set; }
        /// <summary>
        /// 天气图标1
        /// </summary>
        public string ICO1 { get; set; }
        /// <summary>
        /// 天气图标2
        /// </summary>
        public string ICO2 { get; set; }
    }

这样一来操作简单了许多,也很清晰。由于天气更新大概每隔3个小时,所以我们没必要每次运行程序时都去请求服务。首次请求后将可将结果序列化(通过上面的类)存入本地文件里,运行程序时返序列化,再与当前时间比较,如果超过3小时就更新天气

<?xml version="1.0"?>
-<WeatherInfo xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Province>四川 成都</Province>
<City>成都</City>
<CityID>1117</CityID>
<UpdateTime>2014/07/22 14:43:15</UpdateTime>
<METAR>今日天气实况:气温:34℃;风向/风力:东风 2级;湿度:55%</METAR>
<AQI>空气质量:暂无;紫外线强度:中等</AQI>
<COCOLON>穿衣指数:炎热,建议穿短衫、短裤等清凉夏季服装。 过敏指数:暂无。 运动指数:较适宜,天气较好,较适宜进行各种运动,但因天气热,请适当减少运动时间,降低运动强度。 洗车指数:不宜,有雨,雨水和泥水会弄脏爱车。 晾晒指数:适宜,天气不错,抓紧时机让衣物晒太阳吧。 旅游指数:暂无。 路况指数:干燥,天气较好,路面较干燥,路况较好。 舒适度指数:较不舒适,多云,有些热。 空气污染指数:暂无。 紫外线指数:中等,涂擦SPF大于15、PA+防晒护肤品。</COCOLON><FutureWeather><WeatherDay>
<Weather>星期二</Weather>
<Temperature>24℃/33℃</Temperature>
<Wind>南风微风</Wind>
<ICO1>1.gif</ICO1>
<ICO2>3.gif</ICO2>
</WeatherDay>
</FutureWeather>
</WeatherInfo>

wpf在线天气,布布扣,bubuko.com

wpf在线天气

标签:style   blog   http   color   文件   io   

原文地址:http://www.cnblogs.com/liuxiaobo93/p/3860989.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!