2

必须对我的源代码进行大量逐个单元格的更改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 属性 - 但这仍然意味着每列的单独更新。

4

1 回答 1

0

将 UpdateSourceTrigger 设置为显式。您可以获取要刷新的绑定表达式,并在准备好后调用 UpdateTarget。请参阅BindingExpression

于 2013-05-17T21:07:52.860 回答