学习Winphone8.1的时候经常需要对Slider进行数据绑定后使之视觉化,方便调节Slider的值。

数据绑定分为源(Source)和目标(Target),Source一般分为两种,其他控件的数据源,或者数据对象。

而数据源的最简单的格式是:目标控件属性="{Binding ElementName=源控件名, Path=源控件属性}"或者还可以是:目标控件属性=“{Binding Source=数据源, Path=属性名}” 。其中第二种方式Source默认为DataContext,若是此属性,一般省略不写,除非不是,Path关键字一般省略,所以最简格式一般为目标控件属性=“{Binding 属性名}”。

在页面中放置一个Silder和一个TextBox,XAML代码如下:

<Grid>...</Grid>是个容器,StackPanel用于横向或者竖向排列里面的内容,Orientation翻译过来就是排列方式(取向)它的属性是Vertical(纵向)、Horizontal(横向)

  <Grid>
<StackPanel Orientation="Vertical"> <Slider Name="MySlider" Value="" Minimum="" Maximum="" /> <TextBox Text="{Binding Mode=TwoWay, ElementName=MySlider, Path=Value}"/> </StackPanel> </Grid>

看到代码中,TextBox的Text属性的值使用了绑定,绑定的源是名为MySilder的Slider,绑定的属性是Value,意思是,TextBox的Text属性的值,来源于MySilider的Value属性的值

这里的Mode属性解释一下:Mode有三个值,即OneTime、OneWay、TwoWay,这个Binding的绑定模式与Mode有关,Binding默认的Mode是OneWay,单项绑定,也就是说Silder的Value变化时,TextBox的Text也会变,但是TextBox的Text变化时Silder的Value不会跟着变,还有两种叫做OneTime和TwoWay,OneTime是绑定一次,也就是TextBox的Text获取Silder的Value的第一个值,当Silder的Value再次变化时,TextBox的Text不会变。TwoWay是双向绑定,也就是说改变Silder的Value,TextBox的Text跟着变,改变TextBox的Text,Silder的Value也会跟着变。

结果如图:

                  

非常简单的给Slider添加实时可视化数值,这里TextBox也可以替换成TextBlock,具体排版和布局不做详解,有问题可以提出来大家一起讨论。

之后会把学习到的都分享出来,喜欢的关注。

【程序简单知识点重要不喜勿喷】

Windows phone 8.1之数据绑定(Data Binding)的更多相关文章

  1. WPF QuickStart系列之数据绑定(Data Binding)

    这篇博客将展示WPF DataBinding的内容. 首先看一下WPF Data Binding的概览, Binding Source可以是任意的CLR对象,或者XML文件等,Binding Targ ...

  2. WPF中的数据绑定Data Binding使用小结

    完整的数据绑定的语法说明可以在这里查看: http://www.nbdtech.com/Free/WpfBinding.pdf MSDN资料: Data Binding: Part 1 http:// ...

  3. WPF之数据绑定Data Binding

    一般情况下,应用程序会有三层结构:数据存储层,数据处理层(业务逻辑层),数据展示层(UI界面). WPF是“数据驱动UI”. Binding实现(通过纯C#代码) Binding分为source和ta ...

  4. WP8.1 Study5:Data binding数据绑定

    一.数据绑定 最简单的编程UI控件的方法是写自己的数据来获取和设置控件的属性,e.g. , textBox1.Text = "Hello, world"; 但在复杂的应用程序,这样 ...

  5. XAML数据绑定(Data Binding)

    XAML数据绑定(Data Binding)   Data Binding可以使得XAML标签属性的赋值更为灵活和方便.在绑定过程中,获取数据的标签成为目标标签:提供数据的标签成为源标签.在XAML中 ...

  6. Android开发教程 - 使用Data Binding(五)数据绑定

    本系列目录 使用Data Binding(一)介绍 使用Data Binding(二)集成与配置 使用Data Binding(三)在Activity中的使用 使用Data Binding(四)在Fr ...

  7. Android Data Binding(数据绑定)用户指南

    Android Data Binding(数据绑定)用户指南 http://www.jianshu.com/p/b1df61a4df77 https://github.com/LyndonChin/M ...

  8. Data Binding MVVM 数据绑定 总结

    示例代码:https://github.com/baiqiantao/DataBindingTest 参考:精通Android Data Binding    Android Data Binding ...

  9. Data Binding(数据绑定)用户指南

    1)介绍 这篇文章介绍了如何使用Data Binding库来写声明的layouts文件,并且用最少的代码来绑定你的app逻辑和layouts文件. Data Binding库不仅灵活而且广泛兼容- 它 ...

随机推荐

  1. 转载:Centos升级gcc

    一.检查centos 里面是否安装了gcc g++ 输入命令:rpm -qa|grep gcc*有看到就出来gcc的东西就是装了没有的话就yum install gcc* -y 二.升级gcc 对于C ...

  2. 基于前后端分离的Nginx+Tomcat动静分离

    1.什么是动静分离 "动"与"静" 在弄清动静分离之前,我们要先明白什么是动,什么是静. 在Web开发中,通常来说,动态资源其实就是指那些后台资源,而静态资源就 ...

  3. maven仓库有jar包还是报错怎么办?

    出现这种情况通常是jar不能自动下载 一.下载jar包外的其他文件,并放到仓库对应路径下: 点击View All,下载其他文件并放到仓库 二.这样仓库这个对应jar包的文件就齐全了.如果还是报错,请检 ...

  4. Docker安装rabbitmq

    前面的文章中我们的docker已经安装好了,我的最终目的是用docker来安装rabbitmq,所以本文我记录一下我用docker安装rabbitmq的过程: 1.下载镜像(下载management的 ...

  5. JavaScript定义类和实例化示例

    1.类定义: var UseIScrollDataHelper = { myScroll: null, //iScroll对象 scrollId: 'divscroll',//默认scrollid w ...

  6. pandas 使用panel 报错 Panel is deprecated and will be removed in a future version.

    Panel is deprecated and will be removed in a future version.The recommended way to represent these t ...

  7. DB2读取CLOB字段-was报错:操作无效:已关闭 Lob。 ERRORCODE=-4470, SQLSTATE=null

    DB2读取CLOB字段-was报错:操作无效:已关闭 Lob. ERRORCODE=-4470, SQLSTATE=null 解决方法,在WAS中要用的数据源里面配置连个定制属性: progressi ...

  8. Python的一些高级特性以及反序列化漏洞

    0x01 简述 文章主要记录一下python高级特性以及安全相关的问题 python作为脚本语言,其作为高级语言是由c语言开发的,关于python的编译和链接可以看向这里https://github. ...

  9. MYSQL的学习

    启动MYSQL :net start mysql或者手动启动,输入密码:mysql -u root -p 先创建数据库在创建表格,创建数据库:create databsse 数据库名称,创建表格:cr ...

  10. luogu P5323 [BJOI2019]光线

    传送门 先考虑\(n=1\)的情况不是输入数据都告诉你了吗 然后考虑\(n=2\),可以光线是在弹来弹去的废话,然后射出去的光线是个等比数列求和的形式,也就是\(x_1\sum_{i=1}^{\inf ...