2017-03-12 1 views
0

Comment puis-je définir la longueur de la TextBlock de sorte qu'il rentre dans un ListViewItem? Ceci est mon XAML:TextBlock adapter texte dans ListView

<ListView x:Name="flyList" BorderThickness="0" ItemsSource="{Binding}"> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <StackPanel Orientation="Horizontal"> 
       <Border BorderThickness="0,0,0,1" BorderBrush="#FF7C7C7C"> 
        <TextBlock Text="{Binding}" Tapped="TextBlock_Tapped" SelectionHighlightColor="#FF8F8F8F"> 
         <ToolTipService.ToolTip> 
          <ToolTip Name="tip1" Content="Click to copy signal to clipboard."/> 
         </ToolTipService.ToolTip> 
        </TextBlock> 
       </Border> 
      </StackPanel> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

Si le texte est plus que la largeur ListViewItem, le reste du texte ne soit pas visible de toute évidence. Existe-t-il un moyen facile de faire de l'ajustement autre que de coder en dur le texte?

+0

Pouvez-vous montrer des captures d'écran? –

+1

Essayez d'ajouter 'TextWrapping =" Wrap "' au TextBlock – WPInfo

+0

TextWrapping ne fonctionne pas exactement de la même manière sur UWP –

Répondre

4

@CETINKAYA Ayta Ozden a un bon moyen de solution mais je pense que je devrais vous donner un code à expliquer.

La première chose est définie ItemContainerStyle qui utilisent le code:

 <ListView.ItemContainerStyle> 
       <Style TargetType="ListViewItem"> 
        <Setter Property="HorizontalContentAlignment" 
          Value="Stretch"></Setter> 
       </Style> 
      </ListView.ItemContainerStyle> 

Et remplacer le StackPanel à la grille.

Et ajouter TextWrapping="Wrap" à TextBlock. @WPInfo Thx votre chemin.

Si vous définissez le StackPanel qui fera la largeur min et si vous n'avez pas défini le ItemContainerStyle qu'il est par défaut est Left, cela signifie qu'il utilisera la largeur min.

2

Vous ne devez pas utiliser un panneau de pile pour l'élément parent? Et ajoutez HorizontalAlignment à Textblock. Sinon, définissez le style itemcontainer. Avec HorizontalContentAlignment to Stretch, vous pouvez facilement trouver quelques exemples.

+0

C'est UWP pas WPF –