WPF中的数据绑定(初级)
关于WPF中的数据绑定,初步探讨
数据绑定属于WPF中比较核心的范畴,以下是对WPF中数据绑定的一个初步探讨。个人感觉还是带有问题性质的叙述比较高效,也比较容易懂
第一,什么是数据绑定?
假定有这么一个场景,定义两个元素,TextBox(文本控件)与ProcessBar(进度条),如果要达到这么一个效果——当ProcessBar的属性Value变化时,TextBox中的属性FontSize也跟着变化,需要怎么做?
没错,这个时候就需要引入数据绑定的概念了(当然也可以用观察者模式来实现这个,但是有比这个更简单更方便更官方的数据绑定啊)。
第二,数据绑定有哪几种?
元素到元素的绑定(请看上面的红字内容)
元素到非元素的绑定
第三,怎么实现?
元素到元素的实现
这个应该是最简单的,直接上代码
<ProcessBar Name="setFontSize" Value="10"/>
<TextBox Name="showFontSize" Text="This is Show" FontSize={Binding ElementName=setFontSize ,Path=Value}" />
这里需要注意的是,绑定表达式语法(红色高亮):{Binding ElementName=setFontSize,Path=Value },setFontSize就是要绑定的元素名称,Path就是要绑定的元素的属性。
元素到非元素的实现,这里有三个方法
第一,使用Source属性
第二,使用RelativeSource属性
第三,使用RelativeSource属性
第四,暂时结束
技术的路线图是曲线的,并不是线性的,讲到这里暂停一下,最主要的原因是,元素到非元素的绑定涉及到其他WPF中的知识(例如资源的概念),当写完资源等相关的概念后在深入数据绑定。
WPF中的数据绑定(初级)的更多相关文章
- WPF入门教程系列十五——WPF中的数据绑定(一)
使用Windows Presentation Foundation (WPF) 可以很方便的设计出强大的用户界面,同时 WPF提供了数据绑定功能.WPF的数据绑定跟Winform与ASP.NET中的数 ...
- WPF中的数据绑定!!!
引用自:https://msdn.microsoft.com/zh-cn/magazine/cc163299.aspx 数据点: WPF 中的数据绑定 数据点 WPF 中的数据绑定 John Pap ...
- WPF中的数据绑定
WPF中的数据绑定 基础概念 System.Windows.Data.Binding,他会把两个对象(UI对象与UI对象之间,UI对象与.NET数据对象之间)按照指定的方式粘合在一起,并在他们之间建立 ...
- Windows Presentation Foundation(WPF)中的数据绑定(使用XmlDataProvider作控件绑定)
原文:Windows Presentation Foundation(WPF)中的数据绑定(使用XmlDataProvider作控件绑定) ------------------------------ ...
- 【值转换器】 WPF中Image数据绑定Icon对象
原文:[值转换器] WPF中Image数据绑定Icon对象 这是原来的代码: <Image Source="{Binding MenuIcon}" ...
- WPF入门教程系列十八——WPF中的数据绑定(四)
六.排序 如果想以特定的方式对数据进行排序,可以绑定到 CollectionViewSource,而不是直接绑定到 ObjectDataProvider.CollectionViewSource 则会 ...
- 【翻译】WPF中的数据绑定表达式
有很多文章讨论绑定的概念,并讲解如何使用StaticResources和DynamicResources绑定属性.这些概念使用WPF提供的数据绑定表达式.在本文中,让我们研究WPF提供的不同类型的数据 ...
- WPF入门教程系列十七——WPF中的数据绑定(三)
四. XML数据绑定 这次我们来学习新的绑定知识,XML数据绑定.XmlDataProvider 用来绑定 XML 数据,该XML数据可以是嵌入.Xmal文件的 XmlDataProvider 标记中 ...
- WPF入门教程系列十六——WPF中的数据绑定(二)
三.绑定模式 通过上一文章中的示例,学习了简单的绑定方式.在这里的示例,要学习一下绑定的模式,和模式的使用效果. 首先,我们来做一个简单示例,这个示例是根据ListBox中的选中项,去改变TextBl ...
随机推荐
- TopSnackbar,在顶部滑出显示的Snackbar;
TopSnackbar 既然你能找到这篇文章,说明你一定使用过或了解Snackbar,所以我就不介绍Snackbar了.嗯~有图有真相! 嗯,就是图上这样: 我把Snackbar的源码拉了过来,重写了 ...
- Flink开发环境搭建(maven)
1.下载scala sdk http://www.scala-lang.org/download/ 直接到这里下载sdk,(https://downloads.lightbend.com/scala/ ...
- solr全文检索实现原理
本文转自:https://blog.csdn.net/u014209975/article/details/53263642 https://blog.csdn.net/lihang_1994/ ...
- OSS RFC
This is a very late reply, but just want to share the process of setting up all associated RFCs with ...
- centos7配置网易yum源
部分参考centos6: https://blog.csdn.net/jinzhencs/article/details/53673999 下载yum: https://www.cnblogs.co ...
- 6Linux用户身份与文件权限
3类用户身份: (1)管理员UID为0,root (2)系统用户UID为1-999:nologin不能登录系统,老版本5.6中是1-499 (3)普通用户UID为1000开始,老版本5.6中是1000 ...
- Java学习随笔(1)--groovy爬虫
package com.fan import com.fission.source.httpclient.ApiLibraryimport com.fission.source.httpclient. ...
- 获取用户登陆所在的ip及获取所属信息
package com.tcl.topsale.download.entity; public class GeoLocation { private String countryCode; priv ...
- 沙箱机制(Sandboxie)
一.沙箱是什么? 沙箱是一个虚拟系统程序,沙箱提供的环境相对于每一个运行的程序都是独立的,而且不会对现有的系统产生影响. 二.沙箱的应用 (1)搭建测试环境.沙箱的应用只能访问自己的应用访问目录,而不 ...
- Android上显示生僻字的方法
安卓5.0+是可以显示所有(8万多个)Unicode汉字的,本文介绍显示生僻汉字的方法,这个方法也适用于其它特殊字符. Unicode值在0xFFFF以下的(2万多个简体.繁体)汉字早已被广泛支持,所 ...