【发布时间】:2013-05-13 03:24:18
【问题描述】:
必须对我的源代码 DataTable 上的代码进行大量逐个单元格的更改,我需要一种方法来暂时停止它向其绑定的 DataGrid 发送数据绑定更新:
我在后面的代码中有一个DataGrid 绑定到DataTable。
DataGrid 在 XAML 中定义了列以及绑定属性:
<DataGrid.Columns>
<DataGridTextColumn Header="{StaticResource str_Line}" Binding="{Binding Path=Pkey}" />
在加载时后面的代码中,我将数据源 (DataTable) 分配给我的网格:
myGrid.ItemsSource = myTable.DefaultView;
现在由于必须在显示数据上运行一堆自定义数据格式(主要是必须根据其他列的值清除一些列,还有一些图像切换)我手动更新这个源表 - 它相对较小, 总是少于 20 行。我将逐行、逐个单元格地确定这个特定单元格是否需要隐藏或显示它的值。
我不希望我的 UI 线程为每个单元格获取单独的更新事件,但我还没有找到任何切换绑定的方法。
找到 Binding.UpdateSourceTrigger 属性 - 但这仍然意味着每列都有单独的更新。
【问题讨论】:
标签: wpf data-binding datagrid updates ui-thread