J'ai quelques text data
que je veux afficher dans un Grid
, avec trois colonnes, la colonne du milieu étant deux fois plus large que les deux autres, occupant toute la largeur de la grille. Le text
est long et doit être emballé. Ce que je ne peux pas obtenir au travail (et d'autres requêtes ici dans le passé, je vois que d'autres ont eu des problèmes similaires) est d'obtenir un retour à la ligne et de dimensionner la grille pour travailler. Ce que j'est:Habillage de texte, grille et taille d'étoile
<Window.Resources>
<local:DTData x:Key="dtData" />
</Window.Resources>
<StackPanel DataContext="{StaticResource dtData}">
<ListBox ItemsSource="{Binding}" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Border x:Name="a" Grid.Column="0" Margin="4"/>
<TextBlock Margin="4" Grid.Column="0" TextWrapping="Wrap"
Text="{Binding A}" Width="{Binding ActualWidth, ElementName=a }" MinWidth="100"/>
<Border x:Name="b" Grid.Column="1" Margin="4"/>
<TextBlock Margin="4" Grid.Column="1" TextWrapping="Wrap"
Text="{Binding B}" Width="{Binding ActualWidth, ElementName=b }" MinWidth="100"/>
<Border x:Name="c" Grid.Column="2" Margin="4"/>
<TextBlock Margin="4" Grid.Column="2" TextWrapping="Wrap"
Text="{Binding C}" Width="{Binding ActualWidth, ElementName=b }" MinWidth="100"/>
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</StackPanel>
Il utilise l'astuce Border
de WPF TextBox and Scroll behavior pour forcer l'habillage du texte au travail, mais est soit la largeur minimale fixée ou mot le plus long de la largeur de la colonne si elle est supérieure.
Est-ce que quelqu'un connaît un moyen de forcer les colonnes à s'adapter à la largeur de la grille?
double possible de [Comment puis-je obtenir WPF colonnes grille définie avec une étoile à couper le contenu?] (http://stackoverflow.com/questions/25567474/how-do-i-get-wpf-grid-columns-defined-with-star-to-clip-content) – Starceaker