bwu_datagrid в paper-action-dialog запутывает столбцы 2-й раз открывается диалог
Я использую bwu_datagrid в моем веб-приложении Dart/Polymer. В диалоге paper-action я использую сетку "группировки", чтобы показать древовидную таблицу. При первом открытии диалога сетка выглядит нормально. Во второй раз, когда открывается диалоговое окно, это нормально в Chrome, но когда я использую Firefox или Safari, столбцы в несгруппированных строках сжимаются влево (перекрывая друг друга), а заголовки столбцов исчезают.
Это также происходило в Chrome, пока я не добавил следующий код в обработчик событий диалогового окна core-overlay-open-complete:
grid.setColumns = columns;
grid.invalidate();
grid.render();
Похоже, что кто-то сообщил о подобной проблеме еще в ноябре. Была ли эта проблема решена и / или исправлена?
1 ответ
Я нашел обходной путь, который, по крайней мере, работает для меня и для примера "проблема 97 присоединения", который был опубликован в другом месте. Я не знаю, почему это работает, но я добавил новый метод в bwu_datagrid.dart, который называется reshowGrid(). Этот новый метод является урезанной версией "setColumns". Я думаю, что реальный ключ может быть закомментированным "добавлением стиля".
void reshowGrid() {
if (_initialized) {
invalidateAllRows();
_createColumnHeaders();
_removeCssRules();
_createCssRules();
resizeCanvas();
_applyColumnWidths();
//this.shadowRoot.append(_style);
_handleScroll();
}
}
Я звоню grid.reshowGrid()
вместо grid.setColumns
,