微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

跟互联力量学Silverlight之五_XAML的单向和双向绑定

上章内容中,互联力量描述了使用Static Resource表达式,引用其它元素的方法,本章重点谈下Silverlight XAML的各元素间的绑定。

单向绑定

用简单和形象的例子说明这个问题,整个界面只要两个Silverlight控 件:TextBlock和Slider。首先,新 建Silverlight项目,先写个Slider,值的范围在1到40,当前的值是10,如下:

<Slider x:Name=”slider1″ Margin=”5″ Minimum=”1″ Maximum=”40″ Value=”10″ />

在Slider下面放个TextBlock显示文本,文本的字体大小,绑定到Slider的Value属性,如下:

<TextBlock x:Name=”txt1″ Margin=”10″ Text=”Foxitjob.com” FontSize=”{Binding ElementName=slider1,Path=Value}” />

运行,查看效果,拖动Slider后可以看到字体在变化,如图:

互联力量-.net-silverlight-跟互联力量学Silverlight之五_XAML的单向和双向绑定-图1

图1

双向绑定

你如果理解了 单向绑定,会发现TextBlock是单方面受到Slider的影响,而不能反过来影响Slider,依此类推,双向绑定就是双方面能够相互影响。修改前 面的例子,把TextBlock这样写,如下:

<TextBlock Margin=”10″ Text=”Simple Text” Name=”lblSampleText” FontSize=”{Binding ElementName=slider1,Path=Value,Mode=TwoWay}” />

不同之处是多 了Mode=TwoWay,接着在界面上添加TextBox控件,原因是希望能通过输入,来准确的确定字体的大小,而不是单一靠拖动 Slider,如下:

<TextBox Text=”{Binding ElementName=txt1,Path=FontSize,Mode=TwoWay}” />

很明 显,TextBox和TextBlock是双向绑定,TextBlock和Slider也是双向绑定,运行程序后,先拖动 Slider,TextBlock和TextBox跟着变化,然后在TextBox输入数字,按下键盘的Tab键,TextBlock和Slider也随 之而改变,如下:

互联力量-.net-silverlight-跟互联力量学Silverlight之五_XAML的单向和双向绑定-图2

图2

版权所有 互联力量,原文出自:http://www.foxitjob.com/2010/06/334.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐