Urs,
I cannot see why you would want the user to have direct access to the subVIs you created. I would handle it in a different manner, if it were me.
Allow me to explain:
If the user is to have access to subVIs, I would create a separate interface, either on the main panel, or as a subVI Dialog/User Interface to those functions. This architecture allows greater flexibility, while at the same time restricting the user to only those parameters which you want to show.
The user would call, by button on the main panel, a parameters 'page' or 'monitor' depending on their intent. This call would then open a subVI, which would communciate directly to the function in question.
However; if in fact you want users to have direct access
to these subVIs, then I would, as suggested, somehow control their appearance with a cluster of booleans, a listbox, or whatever type of control you find to be most suitable. If your VIs have sufficient icons as to allow you to place those icon as buttons, then you can either use a picture ring, or import the icons into booleans.
The VI Hierarchy window is pretty useless for what want to accomplish. It is meant for development-time editing and viewing of functions in your application, not as a run-time tool. As such, it's functionality is not available during runtime, although you could mimic it's interface and functionality with a heck of a lot of work.
Please let us know how you solve this problem.
Good luck