Silverlight:UpdateSourceTrigger属性的应用
在Silverlight/WPF的BindingExpression中,我们可以对一个Bind定义UpdateSourceTrigger属性,但是在Silverlight里只提供了显式更新和默认方式(即失去焦点时触发),
所以如果我们需要TextBox在输入时即进行数据源的更新,我们需要进一步处理一下,那么如果你熟悉这个功能的话,你在网上能很快搜索出来类似下面的Code:
TextBox txt = sender as TextBox;
var bindingExpression = txt.GetBindingExpression(TextBox.TextProperty);
if (bindingExpression != null)
{
bindingExpression.UpdateSource();
}
那么本篇我仿照前一篇Grid扩展附加属性的做法,实现这个功能,首先声明UpdateExplictProperty
public static bool GetUpdateExplict(DependencyObject obj)
{
return (bool)obj.GetValue(UpdateExplictProperty);
}
public static void SetUpdateExplict(DependencyObject obj, bool value)
{
obj.SetValue(UpdateExplictProperty, value);
}
public static readonly DependencyProperty UpdateExplictProperty =
DependencyProperty.RegisterAttached("UpdateExplict", typeof(bool), typeof(TextBoxExtension), new PropertyMetadata(false, UpdateOnPropertyChangedPropertyCallback));
最终我们在使用这个附加属性时,如下的XAML就可以:
<TextBox Text="{Binding FirstName,Mode=TwoWay}" UpdateTextBox:TextBoxExtension.UpdateExplict="True"></TextBox>
其实对于这个功能,也可以使用Behavior去封装,近期发的两篇文章都是用附加属性来解决问题的,实际也在强调附加属性在Silverlight项目应用的意义所在。
下载代码:TextBoxExtension.rar
转载于:https://www.cnblogs.com/626498301/archive/2012/07/27/2611802.html
Silverlight:UpdateSourceTrigger属性的应用相关推荐
- WPF教程UpdateSourceTrigger属性
在前面的文章我们看到,TextBox中的变化并不是立即传递到源,而是在TextBox失去焦点后,源才更新.这种表现由绑定中的UpdateSourceTrigger属性来控制.它的默认值是Default ...
- WPF Silverlight Visibility 属性的绑定
Silverlight 控件的Visibility属性不能直接用true或者false绑定,而是要通过一个Converter来实现: VisibilityConverter类代码: [c-sharp] ...
- Silverlight实例教程 - Validation用户提交数据验证捕获
在以往的Validation系列中,介绍了四种Silverlight验证机制: 基本异常验证机制: DataAnnotation验证机制: IDataErrorInfo客户端同步验证机制: INoti ...
- 分享Silverlight/WPF/Windows Phone一周学习导读(07月18日-07月24日)
上周,微软推出Silverlight新版官方网站,新网站综合旧版网站内容,并增加更多Silverlight学习资源以及案例展示,Silverlight官网是学习Silverlight开发技术的主要资源 ...
- 如何解决Silverlight InitializeError #2103 - Invalid or malformed application: Check manifest
重构一个Silverlight应用,并修改对应的所有namespace,启动调试客户端出现错误信息如下: InitializeError #2103 - Invalid or malformed ap ...
- Silverlight 2 Customized Control 开发
Customized Control 和 User Control 相信大家比较熟悉使用Silverlight的User Control,在VS2008的Silverlight插件中,可以通过添加新项 ...
- 【转】体验 Silverlight 5 3D开发之环境搭配篇
体验 Silverlight 5 3D开发之环境搭配篇 时间:2012-10-08 20:14来源:博客园作者:吉心 点击:180次 项目组现在要做一个三维的项目,我们几个童鞋,讨论了N久,最后决定基 ...
- 分享Silverlight/WPF/Windows Phone一周学习导读(1月9日-1月16日)
分享Silverlight/WPF/Windows Phone上周学习导读. 本周Silverlight学习资源更新: Prism 4学习笔记之Module Jason Li WPF/Silverli ...
- 分享Silverlight/WPF/Windows Phone一周学习导读(4月4日-4月9日)
期待已久的Silverlight 5即将到来,上周不少关于MIX11的话题,其中值得关注的有以下几篇: MIX11: Silverlight 5,Windows Phone,IE9,HTML5及直播预 ...
最新文章
- 马斯克说到做到!特斯拉牌呼吸机“交货”,用Model 3零部件打造;网友:我滴神啊...
- yl335b分拣站单元流程图_选择单元化物流容器的必要性
- 下列哪个不是目前python里的内置模块-不吹不擂,你想要的Python面试都在这里了【315+道题】...
- 重置outlook 2010
- InfoPath开发
- cutycapt(php截图工具)
- 46 关于Linux的I/O重定向
- 休眠事实:访存策略的重要性
- 真正能成功的人,不见得是最聪明的,也小见得是学历最高的,而是最能面对问题、锲而不舍的人。...
- 华为手机获取状态栏高度是错误的_你的华为手机状态栏有HD图标吗?这又代表着什么?看完你就懂了...
- 带你认识Flink容错机制的两大方面:作业执行和守护进程
- HDU 3785 寻找大富翁
- 小学三年级下计算机工作计划,小学三年级第二学期班主任工作计划
- Linux iptables防火墙详解(一)——iptables基础知识
- iphone编程,使用代码结束程序
- Illustrator 教程,如何在 Illustrator 中使用钢笔工具创建作品?
- jenkins linux虚拟机,Jenkins实战演练之Linux节点任务配置
- 情感极性:关于中文情感分类的知识
- php 生成小程序码
- [matlab实践应用]matlab实现读取xls表格并三次样条插值拟合压杆稳定实验数据
热门文章
- 鸿蒙开发者大会邀请函,将召开史上最大规模开发者大会,华为抓紧调试“鸿蒙”系统...
- 求有向图中两点最短距离java_Java 迪杰斯特拉算法实现查找最短距离
- mysql glibc包很大_linux 安装 mysql 的 glibc 包
- 计算机大学英语值最高的3项,计算机等级考试一级B上机试题:Windows字处理
- matlab ifft频率分辨率,[FFT] matlab中关于FFT的使用(理解频率分辨率、补零问题)
- 序列化数据导入mysql_[导入]对象序列化后保存到数据库
- 机器学习常见算法优缺点汇总
- python遥感影像分类代码_Python 实现遥感影像波段组合的示例代码
- mysql执行语句_MySQL查看实时执行的SQL语句
- matlab逻辑电路图,基于.matlab的数字逻辑电路仿真.doc