WPF DataGrid 绑定数据及时更新的处理
2015-11-19 13:28
471 查看
默认情况下datagrid 绑定数据源后,在界面编辑某一列后,数据不会及时更新到内存对象中。如在同一行上有一个命令对来获取 当前选中行(内存对象)发现,数据未更新过来。解决办法:
在列的绑定属性里加上UpdateSourceTrigger,示例XAML如下
<DataGrid Name="dgProducts" IsReadOnly="False" CanUserAddRows="False" Grid.Row="1"
CanUserDeleteRows="False" AutoGenerateColumns="False" Hyperlink.Click="dgProducts_Click">
<DataGrid.Columns>
<DataGridTextColumn Header="产品编码" IsReadOnly="True" Binding="{Binding Path=ProductNO, Mode=TwoWay}"/>
<DataGridTextColumn Header="产品名称" IsReadOnly="True" Width="150" Binding="{Binding Path=ProductName, Mode=TwoWay}"/>
<DataGridTextColumn Header="规格型号" IsReadOnly="True" Width="150" Binding="{Binding Path=ProductSpec, Mode=TwoWay}"/>
<DataGridTextColumn Header="生产数量" IsReadOnly="False" Binding="{Binding Path=MakeNums, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
<DataGridHyperlinkColumn Header="操作" Width="*" Binding="{Binding Path=PCmd}" />
</DataGrid.Columns>
</DataGrid>这样当即时编辑Datagrid单元格数据时会立马更新数据源的值。UpdateSourceTrigger 枚举详细说明见
http://msdn.microsoft.com/zh-cn/library/system.windows.data.updatesourcetrigger(v=vs.95).aspx
在列的绑定属性里加上UpdateSourceTrigger,示例XAML如下
<DataGrid Name="dgProducts" IsReadOnly="False" CanUserAddRows="False" Grid.Row="1"
CanUserDeleteRows="False" AutoGenerateColumns="False" Hyperlink.Click="dgProducts_Click">
<DataGrid.Columns>
<DataGridTextColumn Header="产品编码" IsReadOnly="True" Binding="{Binding Path=ProductNO, Mode=TwoWay}"/>
<DataGridTextColumn Header="产品名称" IsReadOnly="True" Width="150" Binding="{Binding Path=ProductName, Mode=TwoWay}"/>
<DataGridTextColumn Header="规格型号" IsReadOnly="True" Width="150" Binding="{Binding Path=ProductSpec, Mode=TwoWay}"/>
<DataGridTextColumn Header="生产数量" IsReadOnly="False" Binding="{Binding Path=MakeNums, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"/>
<DataGridHyperlinkColumn Header="操作" Width="*" Binding="{Binding Path=PCmd}" />
</DataGrid.Columns>
</DataGrid>这样当即时编辑Datagrid单元格数据时会立马更新数据源的值。UpdateSourceTrigger 枚举详细说明见
http://msdn.microsoft.com/zh-cn/library/system.windows.data.updatesourcetrigger(v=vs.95).aspx
相关文章推荐
- C#及WPF获取本机所有字体和颜色的方法
- WPF MVVM示例讲解
- PowerShell中调用WPF生成炫酷窗口实例
- WPF实现类似360安全卫士界面的程序源码分享
- C#中WPF使用多线程调用窗体组件的方法
- WPF实现渐变淡入淡出的登陆窗口效果
- WPF的数据绑定详细介绍
- WPF绑定实例详解
- 关于WPF使用MultiConverter控制Button状态的详细介绍
- 如何搭建新的WPF项目框架
- 解析WPF实现音频文件循环顺序播放的解决方法
- WPF Toolkit - February 2010 Release
- 使用WPF创建一个Digg桌面应用
- Barcode Professional for WPF
- WPF数据表格支持vs2010
- Silverlight Gantt甘特图银光,WPF,甘特图,Silverlight,Gantt,任务甘特图,资源甘特图
- WPF甘特图开发包(含任务甘特图和资源甘特图)
- WPF设置窗体最前端显示
- PointFromScreen和PointFromScreen的用法和区别
- 刘铁猛-深入浅出WPF-系列资源汇总