I had thought that a controls id always would work and that only itemId works when the control is either a sibling or child. I've got the code below for a controller that listens for a button click (among other things). It does not respond when the button (continueButtonId) is set as the id property of the button, but the controller does respond when continueButtonId is the itemId of the button.

What am I understanding incorrectly?

Code:
Ext.define('RegistrationApp.controller.RegisterSpeakerAttendeeSponsorController', {
    extend: 'Ext.app.Controller',


    onRbAttendeeChange: function(field, newValue, oldValue, options) {
        //console.log('onRbAttendeeChange');


        if (newValue == true) {
            this.rbChoice = 'attendee';
        }


        this.enableContinueButtonIfDisabled();
    },


    onRbSpeakerChange: function(field, newValue, oldValue, options) {


        //console.log('onRbSpeakerChange');


        if (newValue == true) {
            this.rbChoice = 'speaker';
        }


        this.enableContinueButtonIfDisabled();
    },


    onRbSponsorChange: function(field, newValue, oldValue, options) {
        //console.log('onRbSponsorChange');


        if (newValue == true) {
            this.rbChoice = 'sponsor';
        }


        this.enableContinueButtonIfDisabled();
    },


    onContinueButtonIdClick: function(button, e, options) {
        //console.log('continue: ' + this.rbChoice);


        var tabWizardPanel = Ext.ComponentQuery.query('#TabWizardId')[0];


        if (this.rbChoice === 'speaker' || this.rbChoice == 'attendee') {
            //console.log('speaker or attendee');
            tabWizardPanel.setActiveTab(1);
        } else if (this.rbChoice == 'sponsor') {
            //console.log('sponsor');
            tabWizardPanel.setActiveTab(2);
        }




    },


    enableContinueButtonIfDisabled: function() {
        var continueButton = Ext.ComponentQuery.query('#continueButtonId')[0];


        if (continueButton.isDisabled()) {
            continueButton.enable();
        }   


    },


    init: function(application) {
        this.control({
            "#rbAttendee": {
                change: this.onRbAttendeeChange
            },
            "#rbSpeaker": {
                change: this.onRbSpeakerChange
            },
            "#rbSponsor": {
                change: this.onRbSponsorChange
            },
            "#continueButtonId": {
                click: this.onContinueButtonIdClick
            }
        });
    }


});