Windows phone 8.1之数据绑定(Data Binding)
学习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)的更多相关文章
- WPF QuickStart系列之数据绑定(Data Binding)
这篇博客将展示WPF DataBinding的内容. 首先看一下WPF Data Binding的概览, Binding Source可以是任意的CLR对象,或者XML文件等,Binding Targ ...
- WPF中的数据绑定Data Binding使用小结
完整的数据绑定的语法说明可以在这里查看: http://www.nbdtech.com/Free/WpfBinding.pdf MSDN资料: Data Binding: Part 1 http:// ...
- WPF之数据绑定Data Binding
一般情况下,应用程序会有三层结构:数据存储层,数据处理层(业务逻辑层),数据展示层(UI界面). WPF是“数据驱动UI”. Binding实现(通过纯C#代码) Binding分为source和ta ...
- WP8.1 Study5:Data binding数据绑定
一.数据绑定 最简单的编程UI控件的方法是写自己的数据来获取和设置控件的属性,e.g. , textBox1.Text = "Hello, world"; 但在复杂的应用程序,这样 ...
- XAML数据绑定(Data Binding)
XAML数据绑定(Data Binding) Data Binding可以使得XAML标签属性的赋值更为灵活和方便.在绑定过程中,获取数据的标签成为目标标签:提供数据的标签成为源标签.在XAML中 ...
- Android开发教程 - 使用Data Binding(五)数据绑定
本系列目录 使用Data Binding(一)介绍 使用Data Binding(二)集成与配置 使用Data Binding(三)在Activity中的使用 使用Data Binding(四)在Fr ...
- Android Data Binding(数据绑定)用户指南
Android Data Binding(数据绑定)用户指南 http://www.jianshu.com/p/b1df61a4df77 https://github.com/LyndonChin/M ...
- Data Binding MVVM 数据绑定 总结
示例代码:https://github.com/baiqiantao/DataBindingTest 参考:精通Android Data Binding Android Data Binding ...
- Data Binding(数据绑定)用户指南
1)介绍 这篇文章介绍了如何使用Data Binding库来写声明的layouts文件,并且用最少的代码来绑定你的app逻辑和layouts文件. Data Binding库不仅灵活而且广泛兼容- 它 ...
随机推荐
- marquee标签的使用
marquee语法 <marquee></marquee> 实例一<marquee>Hello, World</marquee> marquee常 ...
- vue DES 加密
安装crypto-js cnpm install crypto-js --save 封装一个des.js ECB模式 import cryptoJs from 'crypto-js' // DES加密 ...
- 如何运用jieba库分词
使用jieba库分词 一.什么是jieba库 1.jieba库概述 jieba是优秀的中文分词第三方库,中文文本需要通过分词获得单个词语. 2.jieba库的使用:(jieba库支持3种分词模式) 通 ...
- Python——一个简单的进度条的实现
import math def process_bar(total_work,work_index,length): times = total_work / length # 长度倍数,用来缩放或扩 ...
- 在页面加载前先出现加载loading,页面加载完成之后再显示页面
在此加入一个关于页面加载成功之前先展现一个loading的案例: 如下代码写入js里放在html头部即可实现需求:添加的可以自己在css文件设置宽高,也可以放入一个background的gif的loa ...
- Doom HDU - 5239 (找规律+线段树)
题目链接: D - Doom HDU - 5239 题目大意:首先是T组测试样例,然后n个数,m次询问,然后每一次询问给你一个区间,问你这个这段区间的加上上一次的和是多少,查询完之后,这段区间里 ...
- 2018-2019-2 网络对抗技术 20165237 Exp6 信息搜集与漏洞扫描
2018-2019-2 网络对抗技术 20165237 Exp6 信息搜集与漏洞扫描 实验目标 1 各种搜索技巧的应用: 2 DNS IP注册信息的查询: 3 基本的扫描技术: 主机发现.端口扫描.O ...
- JustSoso笔记
当时想了大半天,想着到底要怎么绕过MD5呢,结果还是没做出来,即使问了学长,自己还是漏了一个步骤,file=hint.php,特此笔记,又学到了个引用变量的知识 学习自 https://www.ctf ...
- 2019 icpc南昌全国邀请赛-网络选拔赛J题 树链剖分+离线询问
链接:https://nanti.jisuanke.com/t/38229 题意: 给一棵树,多次查询,每次查询两点之间权值<=k的边个数 题解: 离线询问,树链剖分后bit维护有贡献的位置即可 ...
- 分布式事务2PC_PENDING异常处理
set heading off;set feedback off;set echo off;Set lines 999;Spool rollback.sqlselect 'ROLLBACK FORCE ...