+1  A: 

The new window clearly pops up because you are creating a new Shell object each time OnSave is called. You need to get the parent Shell window.

Shell parentShell = Window.GetWindow(this) as Shell;
Peter Lillevold
That is clearly what I was looking for, was trying to find something called "parent", excellent, thanks!
Edward Tanguay