source のコードでセルごとに多くの変更を行う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 プロパティが見つかりましたが、それでも各列の個別の更新を意味します。