I need to keep tree nodes open/closed stated when i set new data to this.dataSource.data. New data is very same with old - it just have one or several lowest-level nodes added/removed. My idea is to record node expansion to ReplaySubject and replay expansion queue. It should work but it's very ugly way. I hope that here are have much more elegant way to solve my problem. Continue reading...