2017-04-18 46 views
2

目前我遇到了wpf文本块的问题。似乎无法使文本进入多行。如果它不适合在屏幕上,它只会从屏幕上消失。我看到一对夫妇建议我将它放在一个ViewBox中,但这只会使字体缩小,文字变得如此之小以至于无法阅读。WPF Texblock不能进入MultipleLines

<StackPanel Orientation="Vertical" Grid.Column="1" Margin="0,40,0,0"> 

     <Label Content="Name" Padding="0" FontSize="20" 
       BorderBrush="{DynamicResource {x:Static SystemColors.ActiveBorderBrushKey}}" 
       BorderThickness="0,0,0,2" /> 
     <TextBlock x:Name="TitleBlock" Text="{Binding Title}" FontSize="15" Margin="0,0,0,15" /> 
     <Label Content="Author" Padding="0" FontSize="20" 
       BorderBrush="{DynamicResource {x:Static SystemColors.ActiveBorderBrushKey}}" 
       BorderThickness="0,0,0,2" /> 
     <TextBlock x:Name="AuthorBlock" Text="Just Some Name " FontSize="15" Margin="0,0,0,15" /> 
     <Label Content="Date Published" Padding="0" FontSize="20" 
       BorderBrush="{DynamicResource {x:Static SystemColors.ActiveBorderBrushKey}}" 
       BorderThickness="0,0,0,2" /> 
     <TextBlock x:Name="DateBlock" Text="{Binding ReleaseDate}" FontSize="15" Margin="0,0,0,15" /> 
     <Label Content="Summary" Padding="0" FontSize="20" 
       BorderBrush="{DynamicResource {x:Static SystemColors.ActiveBorderBrushKey}}" 
       BorderThickness="0,0,0,2" /> 
      <TextBlock x:Name="SummaryBox" Text="{Binding Summary}" FontSize="15" Margin="0,0,0,15" /> 

    </StackPanel> 

我尝试使用电网的,而不是StackPanel的,但它仍然犯规解决问题。

总之,我的问题是我如何让文本块中的文本可以在多行显示,如果它不适合屏幕?

将TextBlock

回答

2
  1. 根据需要来包装元素的含量

    <TextBlock Text="Long Text..." TextWrapping="Wrap" /> 
    
  2. 或者简单地说一套TextBlockTextWrapping财产WrapWrapWithOverflow您元素转换为WrapPanel以包装容器中的元素

    <WrapPanel> 
        <TextBlock>Long Text 1</TextBlock> 
        <TextBlock>Long Text 2</TextBlock> 
    </WrapPanel> 
    
0

使用TextWrapping属性:

<TextBlock Text="test text" Width="100" 
TextWrapping="WrapWithOverflow"/>