I'm with Hans Passant. First off, this sounds like a design you should really reconsider, making any control interact with hidden controls that don't display with the other controls that interact with it?!? I caution you to reconsider your design.
with that disclaimer, i'm still annoyed when people don't answer my question and all they do is criticize my question and really ask me 'why do that', or you shouldn't do that. my attempt is to give you positive criticism to rethink your design. BUT i'll still give you the best answer i can to your question...
so i would simply code it into the checked event on each radio button. it's a little quirky, but i think your design and what you are trying to do is (very) odd too.
So inside each checked event, you need to first: test that the current (new) checked value is true and not false, because the checked events fire when both things happen: when the radio button becomes checked and when it becomes unchecked. this is a bit odd if you don't look for this or know to look for this.
second, if it is checked, then i would call a separate 'UncheckRadioButtons' method with a parameter that passes the radio button that just got checked. in that UncheckRadioButtons method, i'd have an array or list of radio buttons that you code which contains all the radio buttons that you only want one of them checked at once, and then a for each loop to iterate over every item in your RadioButton list or array. inside your loop, you simple test whether that radio button is the same radio button that was passed to your UncheckRadioButtons method, and if it is not the same radio button and it is checked, then uncheck that radio button. so your UncheckRadioButtons method will uncheck all the RadioButtons except for the one RadioButton that is passed to it as a parameter.
sorry that i don't have the time to code such a method for you to even better improve my answer for you. but i wanted to actually give you a real answer at least to help you on your way. :)