DataGrid の WPF Toolkit と WPF 4 での、バインドされた変数の変更通知の挙動のデフォルト値が異なっている件

DataGridを閲覧専用の場合は特に問題はありませんでしたが、行の中がコントロールがあるものの挙動がどうもおかしい。調べてみたところ、Rowのプロパティをバインドした場合の挙動が異なるようです。

探してみると、掲示板にこんな投稿がありました。ここで返事として書かれているとおり、

The DataGrid control in WPF 4 is a little different with the DataGrid in WpfToolkit. By default, it updates the data after the selecting row changed, so we cannot get the new value in the RowEditEnding event .

We can solve this problem by setting the UpdateSourceTrigger of the binding, For example, we can set the UpdateSourceTrigger as PropertyChanged so that wen can get the new value in the RowEditEnding event.

挙動が変わっているようです。

Toolkitでは編集タイミングで変更通知がなされたのですが、WPF 4では、UpdateSourceTrigger=PropertyChangedを指定しない限り、プロパティの変更はバインド先に通知されない、ということのようですね。このせいで編集が全くViewModelに伝わらなかったわけですね。

うーん、細かいところで挙動の変更があるもんだなあ。