原文  WPF 自带Datagrid编辑后无法更新数据源的问题

解决办法:

在列的绑定属性里加上UpdateSourceTrigger,示例XAML如下

<DataGrid Grid.Row="1" Height="274" HorizontalAlignment="Left" Margin="12,10,0,0" Name="dataGrid2" VerticalAlignment="Top" Width="679" RowEditEnding="dataGrid2_RowEditEnding" AutoGenerateColumns="False">
            <DataGrid.Columns>
                <DataGridTextColumn Header="姓名" Width="*" Binding="{Binding Name,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
                <DataGridTextColumn Header="地址" Width="*" Binding="{Binding Addr,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
            </DataGrid.Columns>
        </DataGrid>
这样当即时编辑Datagrid单元格数据时会立马更新数据源的值。

UpdateSourceTrigger 枚举详细说明见
http://msdn.microsoft.com/zh-cn/library/system.windows.data.updatesourcetrigger(v=vs.95).aspx

引用网上找的内容:

WPF通过Binding实现控件和ViewModule(Module)数据源的双向同步,如果想在数据源中的数据变更时及时通知控件,需要类实现INotifypropertychanged接口,如果数据源是个集合,在集合中的数据变更时也想刷新控件,则该集合需要是Observablecollection。

如果用户更改前台控件的值,什么时候通知后台的数据源呢?
这个就是UpdateSourceTrigger这枚举类型来决定的。
关于此枚举的具体类型,可参照

http://msdn.microsoft.com/zh-cn/library/system.windows.data.binding.updatesourcetrigger.aspx

WPF 自带Datagrid编辑后无法更新数据源的问题的更多相关文章

  1. WPF自定义控件的自定义属性绑定后不更新问题

    原文:WPF自定义控件的自定义属性绑定后不更新问题 需要在绑定时设置属性变更触发 UpdateSourceTrigger=PropertyChanged 例如: <Border CornerRa ...

  2. DataGridView编辑后立即更新到数据库的两种方法

    DataGridView控件是微软预先写好的一个显示数据的控件,功能非常强大,可以显示来自数据库表的数据和XML等其他来源的数据. 方法一:基于DataAdapter对象创建一个CommandBuli ...

  3. Dev GridControl数据修改后实时更新数据源

      1:  /// <summary> 2:  /// 嵌入的ComboxEdit控件选择值变化事件 3:  /// </summary> 4: /// <param n ...

  4. Dev GridControl数据修改后实时更新数据源(转)

    1:  /// <summary> 2:  /// 嵌入的ComboxEdit控件选择值变化事件 3:  /// </summary> 4: /// <param nam ...

  5. easyui datagrid 编辑模式详解

       一,建立编辑器 从api得知,扩展一种新的编辑器类型,需要提供以上几个方法.项目中正好需要一个checkbox 类型编辑器,但在easyui中并没提供这样的编辑器,那我们可以通过扩展编辑器来解决 ...

  6. WPF 控件DataGrid绑定

    WPF 手动绑定 DataGrid 例子:前台:<DataGrid AutoGenerateColumns="False" Name="dataGrid1" ...

  7. 扩展jquery easyui datagrid编辑单元格

    扩展jquery easyui datagrid编辑单元格 1.随便聊聊 这段时间由于工作上的业务需求,对jquery easyui比较感兴趣,根据比较浅薄的js知识,对jquery easyui中的 ...

  8. 虚拟机安装 ubuntu 后,更新源无效,以及无法联网安装软件的问题

    问题: 虚拟机安装 ubuntu 后,更新源无效,以及无法联网安装软件: 错误提示: Err http://security.ubuntu.com/ubuntu/ trusty-security/un ...

  9. WPF 实现带蒙版的 MessageBox 消息提示框

    WPF 实现带蒙版的 MessageBox 消息提示框 WPF 实现带蒙版的 MessageBox 消息提示框 作者:WPFDevelopersOrg 原文链接: https://github.com ...

随机推荐

  1. C# DES对称加密解密

    /// <summary> /// 加密 /// </summary> /// <param name="str"></param> ...

  2. hdoj 2222

    http://acm.hdu.edu.cn/showproblem.php?pid=2222 第一道 AC自动机.....trie树的建立 和 AC自动机的查询,,可作模版... 解题思路:AC的应用 ...

  3. 转:不会定义jQuery插件,不要说会jQuery

    一:导言 有些WEB开发者,会引用一个JQuery类库,然后在网页上写一写$("#"),$("."),写了几年就对别人说非常熟悉JQuery.我曾经也是这样的人 ...

  4. Linux 终端部分重要快捷键

    tab  自动补全文件名,目录名或命令名ctrl+c  强行终止当前程序Ctrl+d 键盘输入结束或退出终端 Ctrl+s 暂定当前程序,暂停后按下任意键恢复运行 Ctrl+z 将当前程序放到后台运行 ...

  5. [置顶] PHP开发实战权威指南-读书总结

    从今年开始,断断续续学习PHP已经有4个月了. 最初,认真学习PHP几天,就弄WordPress搭建了一个个人博客,这也符合技术人的实践理念. 最近,重温PHP开发实战权威指南,做点总结,整理下自己学 ...

  6. Linux多线程编程(一)---多线程基本编程

    线程概念 线程是指运行中的程序的调度单位.一个线程指的是进程中一个单一顺序的控制流,也被称为轻量级线程.它是系统独立调度和分配的基本单位.同一进程中的多个线程将共享该系统中的全部系统资源,比如文件描述 ...

  7. Problem 2169 shadow

     Problem 2169 shadow Accept: 141    Submit: 421 Time Limit: 1000 mSec    Memory Limit : 32768 KB  Pr ...

  8. iOS中的图像处理(二)——卷积运算

    关于图像处理中的卷积运算,这里有两份简明扼要的介绍:文一,文二. 其中,可能的一种卷积运算代码如下: - (UIImage*)applyConvolution:(NSArray*)kernel { C ...

  9. 在storyboard中设置控件的layerbordercolor

    在SB中控件可以在SB中直接利用kvc 设置一些属性值,不如layerwidth等 但是不能更改和颜色有关的属性因为layerbordercolor是CGColor.通过为CALayer增加属性可以实 ...

  10. [Swust OJ 763]--校门外的树 Plus(暴力枚举)

    题目链接:http://acm.swust.edu.cn/problem/0763/ Time limit(ms): 1000 Memory limit(kb): 65535 西南某科技大学的校门外有 ...