2009-07-20 12 views
11

Il mio ListBox ha, tra le altre cose, un campo di descrizione in esso che può essere piuttosto lungo. Invece di avere una barra di scorrimento orizzontale voglio racchiudere la parola. Funziona se imposto lo MaxWidth ma dal momento che il ListBox modifica le dimensioni, non desidero codificare il valore.WPF listbox item not wordwrapping

Qual è il modo migliore per farlo?

MODIFICA: la descrizione è in un TextBlock.

semplificato XAML (roba unnessesary Rimosso, mostra ancora problemi:

  <ListBox BorderThickness="0" Padding="5" Name="lstTasks"> 
      <ListBox.ItemsSource> 
       <Binding Source="{StaticResource dataTasks}"/> 
      </ListBox.ItemsSource> 

      <ListBox.ItemTemplate> 
       <DataTemplate> 
        <Grid> 
         <TextBlock Text="{Binding Path=RequestDescription}" TextTrimming="WordEllipsis" TextWrapping="Wrap" Height="60" /> 
        </Grid> 
       </DataTemplate> 
      </ListBox.ItemTemplate> 
     </ListBox> 
+0

Poiché hai detto che l'impostazione di MaxWidth avrebbe funzionato, che ne dici di legare MaxWidth a qualcosa che sta causando il cambiamento della larghezza? –

risposta

29

provare a forzare la larghezza delle vostre ListBoxItems essere la larghezza della ListBox:

<ListBox 
    Name="lstTasks" 
    BorderThickness="0" 
    Padding="5" 
    HorizontalContentAlignment="Stretch"> 

Inoltre si potrebbe provare a disabilitare orizzontale scrolling:

<ListBox 
    ScrollViewer.HorizontalScrollBarVisibility="Disabled" 
    ...> 
+2

Grazie, disabilitando la barra di scorrimento l'ha risolto istantaneamente. –

+0

Grazie - la disabilitazione ha funzionato anche per me. –

+0

Se ha funzionato per te, upvote. I commenti di stack non sono valutazioni di eBay. – Gusdor

0

Non è possibile utilizzare wrapping e tr immergersi insieme. Dovresti usare uno di questi texttrimming o textwrapping. Taglia e non si avvolge.

Per TextWrapping risposta di Matt è corretto per il taglio è necessario definire larghezza o maxwidth valore proprietà.

È esattamente lo stesso per gli sviluppatori di SL.