Silverlight Textbox在失去焦点之前无法获取到Text值的解决办法

简介:

Silverlight的Textbox只有在焦点失去的时候才能取到Text值,这就使得在某些操作下容易导致值在保存之前丢失的问题。例如:DataGrid中使用了自带的Group,用户编辑其中的Textbox值然后保持焦点在Textbox中不丢失,折叠DataGrid中的group分组,这时保存数据(到数据库或是SharePoint List),原先绑定到数据源的Textbox中的值并没有被改变。一个比较有效的解决方法就是给这些Textbox添加TextChanged事件,然后加入下面的代码:

private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
    BindingExpression expresson = (sender as TextBox).GetBindingExpression(TextBox.TextProperty);
    expresson.UpdateSource();
}

  这样,每当Textbox中的内容发生变化时都会触发该事件,从而通知其绑定的数据源内容做出修改。


本文转自Jaxu博客园博客,原文链接:http://www.cnblogs.com/jaxu/archive/2012/06/16/2551591.html,如需转载请自行联系原作者

相关文章
|
前端开发 .NET 开发框架
Silverlight页面在兼容/高速模式下出现滚动条的解决办法
在asp.net web项目中承载Silverlight项目的页面,在搜狗高速模式下正常,在兼容模式下出现竖直滚动条,如何去除? 将承载Silverlight的测试页中的以下标识进行修改。
682 0
|
Windows
Silverlight插件安装失败,提示1603错误号的解决办法
消息 ID: 1603,安装过程中出现错误。 请执行以下步骤: 原因是在以前安装过silverlight,没有安装成功或者没有彻底卸载干净,遗留了一些文件,尤其是安装时突然中断的时候会出现这个问题,还有就是IE中用户没有相应的权限来安装插件。
747 0
VS2010安装完SP1后再安装Silverlight Tools 4遇到的问题解决办法
习惯安装完VS2010就安装SP1,但是这样我们再装Silverlight Tools 4时就遇到错误: 安装需求:必须先安装与 Silverlight Tools 4 语言版本相一致的 Visual Studio 2010、Visual Web Developer 学习版 2010 或 Visual Phone Developer 学习版 2010,Silverlight Tools 的安装才能继续。
859 0

热门文章

最新文章