Ваша сетка должна иметь настроенный магазин, который загружает данные? Вы можете прослушать в вашем магазине изменения данных.
listeners: {
datachanged: function(store, eOpts) {
//localize your button
let yourButtonInToolbar, //Get Button (e.g. via ComponentQuery)
boolean = store.getData().getCount() === 0;
yourButtonInToolbar.setDisabled(boolean);
}
}
В этом случае магазин уже должен был установить данные, если произошли изменения. Я сделал логическое значение в зависимости от вывода метода getCount
внутри результата метода getData
в магазине.
С этим логическим значением я использую метод setDisabled на локализованной кнопке на панели инструментов.
Надеюсь, это поможет.