[英]TextBlock in a ListBox does not wrap
我有這個帶有2個TextBlock的ListBox:
<ListBox Name="TransactionList" Margin="25,0,12,12" Height="362" VerticalAlignment="Bottom" ScrollViewer.HorizontalScrollBarVisibility="Disabled" Grid.Row="1">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="0,0,0,20">
<TextBlock Text="{Binding Name}" TextWrapping="Wrap" Style="{StaticResource PhoneTextLargeStyle}" Height="146" />
<TextBlock Text="{Binding Description}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
當我運行應用程序時,TextBlocks不會換行; 我該如何解決?
將ListBox放在ScrollViewer中,並將列表框上的附加屬性ScrollViewer.HorizontalScrollBarVisibility設置為disabled。 然后文本將被包裝在窗口大小適合的任何大小。
<ScrollViewer>
<ListBox HorizontalContentAlignment="Stretch" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<!-- Your ItemTemplate -->
</ListBox>
</ScrollViewer>
文本塊沒有任何寬度設置。 請設置文本塊(比如說10),它應該可以正常工作。
在什么時候你期望它包裝? 你必須通過在TextBlock
上設置Width
來告訴它。 您還可以抑制Width
的的TextBlock
設定父母的Width
屬性,但在你的情況下,將其設置在StackPanel
,因為它沒有大小其內容不會有這種效果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.