在上章内容中,互联力量描述了使用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后可以看到字体在变化,如图:
图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也随 之而改变,如下:
图2
版权所有 互联力量,原文出自:http://www.foxitjob.com/2010/06/334.html
总结以上是内存溢出为你收集整理的跟互联力量学Silverlight之五_XAML的单向和双向绑定全部内容,希望文章能够帮你解决跟互联力量学Silverlight之五_XAML的单向和双向绑定所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)