WPF: tomada de altura textblock expandir quando texto fica muito grande para 1 linha

StackOverflow https://stackoverflow.com/questions/1443541

  •  22-07-2019
  •  | 
  •  

Pergunta

Eu tenho um listview com um itemtemplate:

<ListView x:Name="messages" HorizontalAlignment="Left" 
    Background="{x:Null}" BorderBrush="{x:Null}" Foreground="Black">
    <ListView.ItemTemplate>
        <DataTemplate>
            <TextBlock Style="{DynamicResource h3}" Text="{Binding}"
                Margin="10" MaxWidth="850"/>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

Esta listview está em um StackPanel vertical. Então, sua largura é o mesmo que a largura do StackPanel.

O listview deve mostrar mensagens que poderiam ser muito longa. Eu estou tentando ter certeza de que quando uma mensagem é muito longo para a largura disponível, o textblock recebe altura extra eo texto é exibido em 2 linhas.

Eu posso google um monte de maneiras de ter este conseguido com uma altura fixa, mas desde que eu não sei com antecedência se eu vou precisar de mais de 1 linha, eu gostaria de ter certeza de que isso acontece automaticly. Eu não quero que cada item para ter a altura de 2 linhas, somente quando for necessário.

Como posso conseguir isso?

Foi útil?

Solução

Você tentou a propriedade TextWrapping? Parece que ele iria fazer o que quiser.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top