У меня есть небольшой опыт работы с ExtJS3 и теперь, начиная с версией 4.ExtJS4 - как получить родительскую сетку на changechange?
В моем контроллере, у меня есть это:
init: function()
{
this.control({
"userlist":
{
selectionchange: function (view, selected, opts)
{
//get to grid??
}
}
});
}
Как я могу получить доступ к сетке, что это событие произошло на, без использования идентификаторов? Я хочу, чтобы включить/отключить кнопки на панели инструментов сетки (tbar
), если есть элементы, выбранные, но я не хочу давать ничего идентификаторы (не бар, а не отдельные кнопки)
EDIT: решение было использовать refs
свойство в контроллере:
refs:
[
{
ref: "list",
selector: "userlist"
}
],
selectionchange: this.activateTbButtons
activateTbButtons: function (selected, opts)
{
if (selected.selected.length == 1)
{
var tb = this.getList().query("toolbar");
}
}
я не должен быть в состоянии получить доступ к 'view.tbar' тогда? aahhh ... oops, это настройка конфигурации, а не свойство – Madd0g
Я отредактировал ответ. Представление не передавалось обработчику. Только модель выбора, выбранные элементы и т. Д. –
wow, этот метод 'refs' довольно хорош, он отлично работает с ним – Madd0g