My application consists of a single window with various view models displaying graphs/charts/tables, etc. My users have decided they want the ability to pop out a chart and have it display in its own window, similar to how you can drag a tab out of Chrome, or a docked view out of Visual Studio, to see it in its own window.
I would like to avoid generating a new instance of the view model for use in the new window.
Is there a way to preserve the view model while moving it from one window to another? And is there a way to easily remove the corresponding view from one visual tree and add it to another?
UPDATE:
I looked into AvalonDock and it's not quite what I'm looking for. I just want to move an existing viewmodel from one part of the UI to a window. Any ideas?