Galera essa dica é para aqueles que iniciaram suas pesquisas com o Jdeveloper 11g.
Nosso case, foi desenvolvido por Frank Nimphius.
O exemplo abaixo, iremos construir um DropDown com o componente SelectOneChoice, onde o mesmo irá listar os "Departamentos" e seus "Empregados" em forma de hierarquia, como a imagem abaixo.
Para a implementação do lista, é preciso criar um View Object (VO) hirarquico, baseado no "departamento" e "empregado". O VO pode ser arrastado ou criado manualmente para a tela, em forma de SelectOneChoice. O código deve ficar da seguinte forma:
<af:selectOneChoice id="selectBox" label="Choose Employee" valuePassThru="true"
styleClass="employeeSelectBox"unselectedLabel="Choose Employee">
<af:forEach items="#{bindings.DepartmentsView1.children}" var="departments">
<af:selectItem label="#{departments.DepartmentName}" disabled="true"/>
<af:forEach items="#{departments.children}" var="employees">
<af:selectItem label="#{employees.LastName}" value="employees.EmployeeId"/>
</af:forEach>
</af:forEach>
Note que o primeiro "forEach" é baseado no VO de departamentos e exibe o atributo DepartamentName. O segundo "forEach" é baseado no Filho do VO de departamentos como
#{departaments.children}.
Para aplicar a cor a lista, é utilizado o css, onde o selectOneChoice tem sua propriedade styleClass.
Para quem quiser fazer o download do projeto, acesse:
http://www.oracle.com/technology/products/jdev/tips/fnimphius/selectonechoicegroups/HierarchicalSelectOneChoice.zip
Até a próxima.
Nenhum comentário:
Postar um comentário