A few months ago I discovered the SubPanel Container in LabVIEW 2009. I'm sure it's been there a while, but hadn't needed it until recently. My objective was to call a driver vi I had developed many months before through a bigger and Main control vi. I was going to need the sub-vi front panel controls, so I was about to dynamically call it and have it pop up in another window, but that just didn't seem "clean" enough for me. That's when I saw the SubPanel container and thought this was perfect, I could have both vi front panels shared on one front panel! My issues arose when I tried compiling my code to make an executable for distribution. This is what I learned to get my application to compile correctly, with my sub-vi front panel embedded in the Main front panel.
1) In the sub-vi that will go into the SubPanel Container we have to set the "Show Front Panel when called" property. Do this by following the menu's by right clicking the vi icon on the front panel and launching "VI Properties": "Window Appearance ->Custom->Customize and check the "Show Front Panel when called" Refer to attached images 1a and 1b.
2) Add the sub-vi you want to insert into the SubPanel container to your project. In the build properties, under Source Files, put your Main control vi as the "Startup VIs" and the sub-vi into the "Always Included" section. Refer to image 2.
3) Okay, so here is the tricky part, you'll have to strip the main vi's path in order to create the correct pointer path to your sub-vi you want to load into the SubPanel control. This may take a few tries and will vary depending on how you save your vi's (i.e.- in one main folder, in sub-folders, in *.llb etc...), but in the end, it should work for both your source code AND when you compile it. Refer to image 3 for the example snap shot of my diagram that calls the sub-vi from my main control vi that is inside a *.llb.