Вертикальная компоновка Dijit

Мне нужно создать список кнопок внутри ContentPane (одна под другой) в виде «вертикальной сетки с одним столбцом». Такого виджета раскладки я в dijit ref не нашел. руководство.

Что я могу использовать? Как я могу получить новую строку при добавлении элементов (addChild) в панель содержимого?

Есть контейнер с сеткой доджокс, но мне кажется, что это излишне.


person Fabio B.    schedule 05.11.2012    source источник


Ответы (1)


Я знаю, что это наименее элегантный способ сделать это, но он единственный в своем роде: вы можете создать собственный div-domNode, содержащий ваши кнопки, вот так:

    var btn1=new dijit.form.Button({...});
    var btn2=new dijit.form.Button({...});

    // custom div-domNode
    var buttons = dojo.create('div');

    // filling it with the domNodes of your buttons separated by a <br> node
    dojo.create(btn1.domNode,null,listOfButtons);
    dojo.create('br',null,listOfButtons);
    dojo.create(btn2.domNode,null,listOfButtons);

и отобразить его в ContentPane

    myContentPane.set('content', buttons);

Также подойдет ul или таблица. Наконец, позвольте мне сказать, что мне очень стыдно за то, что я не знаю лучшего ответа. Надеюсь, это то, о чем вы просили.

person nozzleman    schedule 05.11.2012
comment
честно говоря, ненавижу свой ответ. Итак, я хочу добавить, я думаю, сетка-контейнер может быть даже лучше этого. Вы думали об использовании dijit.menu? (ссылка). - person nozzleman; 05.11.2012
comment
Кстати: другой дурацкий метод - установить фиксированную ширину для ContentPane и Buttons, чтобы каждая кнопка неявно помещалась в новую строку, так как строка будет иметь значение 2;) - person nozzleman; 06.11.2012