В чем разница между invalidateList и invalidateDisplayList?

У меня есть DataGrid, заполненный объектами в ArrayCollection. После обновления одного из полей объектов я хочу, чтобы экран обновлялся. Источник данных не является связываемым, потому что я его создаю во время выполнения (и я не понимаю, как его можно привязать на лету, - этот еще вопрос).

В этой ситуации, если я вызываю InvalidateDisplayList() в сетке, ничего не происходит. Но если я вызываю invalidateList(), обновления происходят. (И это очень гладко - не мерцает, как я ожидал бы от недействительности окна в WIN32.)

Итак, вопрос: в чем разница между InvalidateList и InvalidateDisplayList? Из документации кажется, что нужно работать.

Ответ 1

invalidateList сообщает компоненту, что данные были изменены, и ему необходимо перезагрузить его и повторно отобразить.

invalidateDisplayList сообщает компоненту, что он должен перерисовать себя (но не обязательно перезагружать его данные).