Sorry, I got confused and didn't quite get your concern correctly the first time around. Your problem can be solved by replacing absolute XPath with relative XPath.
instead of this:
MainDataSource.CreateNavigator().SelectSingleNode("/my:myFields/my:field1",NamespaceManager);
use this:
e.Source.SelectSingleNode("my:field1",NamespaceManager);