The BasicForm and the FormPanel handle their items is slightly different ways which makes for some confusing debug sessions! It would be nice if BasicForm also understood itemId. After all, it is also in the collection named items. This would be both more consistent and make some things easier..

Original:
PHP Code:
    this.items = new Ext.util.MixedCollection(false, function(o){
        return 
o.id || (o.id Ext.id());
    }); 
Proposed:
PHP Code:
    this.items = new Ext.util.MixedCollection(false, function(o){
        return 
o.itemId || o.id || (o.id Ext.id());
    });