Unless you have changed the Diagram.PartManager or unknowingly replaced the Diagram.Model, I think there should always be Nodes and Links for the data in the model. Off hand I cannot think of any way to explain such behavior. Did you check that Diagram.Nodes, for example, is empty, even though Diagram.NodesSource is not?
The most common problem with interactions with other controls involves container controls that cause the Diagram to be Unloaded. This normally results in the Diagram removing all Parts, to reduce memory usage and potentially avoid some garbage generation problems. The most common example of this is the TabControl. But GoXam knows about that control and automatically avoids the unloading behavior when the user switches between tabs inside a TabControl. If this sounds relevant to your situation, you can search this forum for more information.