Вопрос

кто знает способ создать пользовательскую ячейку FORA dojox.grid.DataGrid? Я, конечно, мог бы использовать свойства Get и Formatter планировки, но это не очень многоразовое решение!

Спасибо за ваш вклад!

Генрих

Это было полезно?

Решение

Вы можете попробовать косвенный способ добавить виджет Dojo в ячейку сетки

1 комплект escapeHTMLInData к false для dojox.grid.DataGrid

2) Тогда в функции Get / Formatter попробуйте что-то вроде

function formatterFn() {
    var buttonToReturn = dijit.form.Button({
        /* Button attributes */
    }
    var div = document.createElement("div");
    div.appendChild(buttonToReturn.domNode);
    return div.innerHTML;
    // You can leave the div orphan
}

Вы можете условно вернуть разные виджеты в соответствии с вашими потребностями

Надеюсь, поможет!

Другие советы

Что вы подразумеваете под пользовательской клеткой?

Вы хотите использовать флажок или TextBox вместо текста? или

Вы хотите показать изображения вместо текста?

В первом случае

  • дать «редактируемое» = «правда»
  • Установите «SingleClickedit» = «True» и
  • Установите переменную CellType. Вы можете продлить класс редактора по умолчанию и сделать свой собственный класс редактора.

Во втором случае вы можете использовать функцию Fixter.

Лучше использовать существующие функции и классы. Расширение сделает сетку медленнее.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top