If you're determined to stick with your current design then all I can tell you is that it worked for me. I suggest that you do what I did and what you should always do in situations like this: create a new project and add only what is absolutely required to test the functionality you're having trouble with. If it works then you know that it's something else specific to your original project that is the issue. One option then is to start adding other functionality to your test project to make it more like your original project and, when it breaks, you've found the culprit.