天气预报的部分代码公布到了博客后,很多网友就要求喜欢能下载到整个项目。昨天早上把源代码传到了csdn,晚上写了一篇博文介绍序列化谷歌数据的工具类,顺便把整个项目的源代码下载地址加上了。
很多网友反映csdn的积分问题,在此把下载地址更新一下。
天气预报源代码(一):http://www.cnblogs.com/wildfeng/archive/2012/03/21/2410504.html
wp7天气预报源代码(二)公布源代码下载地址:http://www.cnblogs.com/wildfeng/archive/2012/03/24/2415327.html
新下载地址:http://download.csdn.net/detail/wildfeng04/4170526(无需积分)
原下载地址:http://download.csdn.net/detail/wildfeng04/4168595
因为我最新版本1.5已经在csdn上传过了,系统不让我再传。不管是重新压缩还是更改名字还是新建文件夹都没法跳过。(csdn过滤太严了 - -)
我新上传了1.4版本,有些小BUG,不过不影响整体,通过此链接下载无需积分。
在此郑重声明一下,csdn是我第一个接触的技术交流社区,我写的源代码只会传到csdn的资源里和大家分享。但我也需要积分去下载别人的资料,我也只会在csdn里下载,别的地方都不知道。申请的csdn的号用不了5分钟吧,随便一个新号都能下载的,希望大家都能有消费精神,积分又不是人民币。
下面我顺便介绍一些UI方面的代码吧。
设计UI,用Blend最为适合了。学siliverlight的时候初次解除Blend,感觉很多地方跟flash很像。以前就有点flash的底子,对于Blend就没有感觉到那么难了。
此空间的文档大纲可以很清晰得看出,这是由一个三行一列的布局表格组成,行高分别为46*、100*、30。每一行中各有一个控件。代码如下:
UserControl标签就是指用户自定义控件。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<UserControl
mc:Ignorable=
"d"
x:Class=
"Weather.ForecastTile"
d:DesignWidth=
"120"
d:DesignHeight=
"170"
>
<Grid x:Name=
"LayoutRoot"
>
<Grid.RowDefinitions>
<RowDefinition Height=
"46*"
/>
<RowDefinition Height=
"100*"
/>
<RowDefinition Height=
"30"
/>
</Grid.RowDefinitions>
<Grid.Background>
<ImageBrush Stretch=
"Fill"
ImageSource=
"/Weather;component/UserControl/forecast_tile.png"
/>
</Grid.Background>
<TextBlock Name=
"txtWhichDay"
HorizontalAlignment=
"Center"
VerticalAlignment=
"Bottom"
Text=
"今天"
Foreground=
"White"
FontFamily=
"Segoe WP Bold"
FontSize=
"32"
Grid.Row=
"0"
/>
<Image Name=
"imgWeathericon"
Margin=
"0,0,0,0"
Source=
"/Images/forecasts/day/sunny.png"
Grid.Row=
"1"
Stretch=
"Uniform"
/>
<TextBlock x:Name=
"txtTemperature"
Grid.Row=
"2"
Foreground=
"White"
FontSize=
"20"
HorizontalAlignment=
"Center"
VerticalAlignment=
"Top"
FontFamily=
"Arial"
Text=
"-13°/-15°"
/>
</Grid>
</UserControl>
|
然后在写好此控件的属性器,那么自己做的控件就弄好了。用法就跟微软工具箱里面的控件一个用法了,就不用多说了。
代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
public
partial
class
ForecastTile : UserControl
{
public
ForecastTile()
{
// 为初始化变量所必需
InitializeComponent();
}
public
ImageSource Weathericon {
get
{
return
imgWeathericon.Source; }
set
{ imgWeathericon.Source = value; } }
public
string
WhichDay {
get
{
return
txtWhichDay.Text; }
set
{ txtWhichDay.Text = value; } }
public
string
Temperature {
get
{
return
txtTemperature.Text; }
set
{ txtTemperature.Text = value; } }
}
|
这个控件因为是静止的,我没有做任何动态的效果,没有做Storyboard。以后的文章会详细讲这个地方。我第一次接触的时候感觉跟flash里面的时间轴类似,可以制作影片剪辑。
4月中旬就要考试了,没多少时间可以写博文了,得抓紧学习了。