Когда вызывается метод ConvertBack?

Я знаю, что когда данные будут отображаться, вызывается метод Convert() для преобразования данных, и вместо этого отображаются преобразованные данные.

Мне интересно, когда вызывается метод ConvertBack()? В чем его цель?

У меня есть DataGrid, чей ItemSource привязан к некоторой коллекции, и я реализовал IValueConverter для одного свойства элементов в коллекции. Когда я делаю IsReadOnly="True" (в DataGrid), тогда вызывается метод ConvertBack, если я дважды щелкнул по ячейке (для которой IValueConverter), а затем изменит фокус. Но когда я делаю IsReadOnly="False", метод ConvertBack никогда не вызывается, независимо от того, что я делаю с DataGrid и его ячейками.

Пожалуйста, объясните это поведение ячеек DataGrid и ConvertBack метода IValueConverter.

Ответ 1

"Механизм привязки данных вызывает этот метод, когда он передает значение от цели привязки к источнику привязки".

см. msdn

вы должны опубликовать свою привязку для своей ячейки с помощью valueconverter