Если я правильно понял ты хочеш вначале отрендерить контрол, а потом показать. Если так то попробуй рендерить в какой нибудь невидимый див, а на событие он рендер зделай див видимым.
псевдокодом это будет выглядить так:
// припустим у нас есть в разметке <div id = 'myInvisibleDiv' style='visibility:hidden'/>
твоё окно будет выглядеть приблизительно так:
var myWindow;
if (! myWindow )
myWindow = new Ext.Window({
//твой конфиг
renderTo: 'myInvisibleDiv',
listeners: {render: function(){
Ext.get('myInvisibleDiv').setStyle('display', visible); // тут делаем визибл наш див-контейнер
//тут можно удалить етот листенер если он тебе больше ненужен
}
}
})
я не проверял, но теоретически должно работать.