Inquiridor
ListView + StackPanel

Pergunta
-
Boa noite,
Estou tentando inserir uma lista de itens em um StackPanel, contido em um ListView. A lista é inserida com sucesso, mas gostaria que tivesse um comportamento diferente do que está tendo.
Se, na stackpanel, coloco a orientação em horizontal, todos os itens ficam em horizontal dando rolagem, se coloco na verrtical, fica apenas item a item na vertical.
Gostaria que fosse horizontal até o tamanho do StackPanel e depois começasse uma nova inserção na linha abaixo, tipo matrix nxn.
Segue os prints de como está com orientação Horizontal e Vertical.
Obrigado.
- Editado cayo quarta-feira, 31 de agosto de 2011 22:04 palavra escrita errada
Todas as Respostas
-
cayo, porque você não usa uma grid dentro do seu ListView? Assim, você delimita quantas colunas deseja usar e seus tamanhos. Ai é só montar uma lógica para adicionar dinamicamente as linhas dessa Grid, para que continua na linha de baixo.
Leonardo Borges 'Xis'
"Mas a persistência é o que leva a perfeição."
Se a resposta for útil, marque-a. Poderá ser útil para outros desenvolvedores. -
Leonardo, havia pensado já nesta possibilidade mas imaginava que o ListView pudesse facilitar esse trabalho.
Fazendo da forma que sugeriu, terei que calcular o tamanho de cada nome somado com o tamanho de cada retângulo colorido (tudo bem, o retângulo é fácil visto que seu tamanho é fixo), delimitando a largura de cada coluna. E isso terá que ser redimensionado ou colunas adicionadas (podendo reduzir o número de linhas) quando o usuário maximizar a janela, já que, neste evento, a largura das colunas iria aumentar, despadronizando a grid.
Mas de qualquer forma agradeço sua ajuda, obrigado!
Abs,
-
O painel que atende sua necessidade é o WrapPanel, a direção da criação das novas linhas é feita através da prop. FlowDirection.
Allan Tavares - Desenvolvedor Pleno - Spread Systems/Banco do Brasil- Sugerido como Resposta hamiltonj segunda-feira, 3 de outubro de 2011 12:42