Estou criando em um Windows App Store, Quero mostrar ao usuário várias mensagens informativas. Eu escolhi um ListBox como a ferramenta para mostrá-lo para que eles podem rolar nas coisas deles e muito bom.
As mensagens são informativas somente, Então não há nenhuma necessidade de fornecer tudo o que mais espaço em branco ao redor deles, desde que o usuário nunca pode selecioná-los para alguma coisa. O comportamento padrão do ListBox fornece uma quantidade substancial de enchimento e queria se livrar dele. Bem.... Não pode fazer esse tipo de coisa na ListBox diretamente. NO ENTANTO, Você pode fazê-lo para os itens que você adicionar:
privada privatevoid AddGameStateLogMessage(Cadeia de caracteres Amensagem) { TextBox t = Novo TextBox(); t.Text = GameStateCounter + ": " + Amensagem; t.TextWrapping = TextWrapping.Wrap; t.MinWidth = 400; Espessura thisPadding = Novo Espessura(5, 0, 5, 0); t.Padding = thisPadding; t.FontSize = 12; ListBoxItem li = Novo ListBoxItem(); Li.Conteúdo = t; Li.MaxHeight = 25; thisPadding = Novo Espessura(5, 0, 5, 0); Li.Preenchimento = thisPadding; GameStateLog.Items.Insert(0,Li); }
no exemplo acima, Eu estou criando um TextBox e definindo sua fonte, seu preenchimento, etc.
Próximo, Eu criar um ListBoxItem e definir seu conteúdo para a caixa de texto formatada.
Finalmente, Para inserir o ListBoxItem para o ListBox. (Quero mostrar as mensagens mais recentes no topo da lista, Portanto, a inserção(0,Li) em vez de um simples adicionar() invocação.).
Vai ser-isso aprimorando um pouco antes, estou muito feliz com o comportamento de ListBox, mas o padrão mostrado acima tem sido muito proveitoso. Espero que outra pessoa acha útil.
</fim>
Siga-me no Twitter em http://www.twitter.com/pagalvin