Windows Phone 7 数据绑定的简单介绍

三种模式的数据绑定。
1.OneTime:一次绑定,在绑定创建时使用源数据更新目标,适用于只显示数据而不进行数据的更新。
2.OneWay:单向绑定,在绑定创建时或者源数据发生变化时更新到目标,适用于显示变化的数据。
3.TwoWay:双向绑定,在任何时候都可以同时更新源数据和目标。

绑定的语法可以用大括号表示,下面是几个例子:

< TextBlock Text="{Binding Age}" />

等同于:

< TextBlock Text="{Binding Path=Age}" />

或者显式写出绑定方向:

< TextBlock Text="{Binding Path=Age, Mode=OneWay}" />

按照数据绑定的语义,默认是 OneWa y 的,也就是说如果后台的数据发生变化,前台建立了绑定关系的相关控件也应该发生更新。

一个小例子,通过slider的值来控制矩形控件图形的宽度

Windows Phone 7 数据绑定的简单介绍

  
    
< Grid x:Name ="ContentPanel" Grid.Row ="1" Margin ="12,0,12,0" >
< Grid.RowDefinitions >
< RowDefinition Height ="*" />
< RowDefinition Height ="*" />
< RowDefinition Height ="*" />
</ Grid.RowDefinitions >
<!-- 这个是绑定的资源,它的值的变化会引起下面的矩形的变化 -->
< Slider Name ="slider"
Value
="90"
Grid.Row
="0"
Maximum
="180"
Margin
="24" />

< TextBlock Name ="txtblk"
Text
=" {Binding ElementName=slider, Path=Value} "
Grid.Row
="1"
FontSize
="48"
HorizontalAlignment
="Center"
VerticalAlignment
="Center" />

< Rectangle Grid.Row ="2"
Width
=" {Binding ElementName=slider, Path=Value} "
RenderTransformOrigin
="0.5 0.5"
Fill
="Blue" >
< Rectangle.RenderTransform >
< RotateTransform x:Name ="rotate"
Angle
="90" />
</ Rectangle.RenderTransform >
</ Rectangle >
</ Grid >

你可能感兴趣的:(windows phone)