As far as I know, you have to disable each control individually. However, that can be done quite easily by a separate subroutine which accepts a parent control id, and then loops through the controls collection, and processing only those controls whose parent is the passed in frame. Specific syntax will depend on what language you're using.