Well, I can understand the objective, but your architecture implementation is still not clear to me. Do you have an event-driven program? It sounds like when you're in some specific state, then you don't want to be able to let the user fiddle with some controls. That, to me, sounds like you want to enable/disable the controls, and not take the approach to change to a constant since at the user interface level it seems to imply to the user that they can still mess around with those controls. You're just overriding the value in code. Like I said, I'm just guessing here because I can't really see your architecture. However, if you were to access the controls via local variables as I mentioned in my first response, you then would not have the issue of the controls duplicating when you duplicate the case. My mention of the property nodes had to do with enabling/disabling the controls.
In general, property nodes are not evil. It's simply that sometimes they can get misused. For example, you should never use a property node to accomplish what you can do with a local variable or just a wire. For example, I've often seen a lot of code written by inexperienced LabVIEW programmers that use the "Value" property to set the value of a control. Usually these folks come from a VB/C++ background. In this case it is far more efficient to use a local variable. However, there are some things that can only be done with a property node.