J'ai besoin d'aide. Je ne sais pas si c'est possible. Je veux avoir ce qui suit:wpf textbox textwrapping
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<TextBox TextWrapping="Wrap" MinLines ="5"/>
</Grid>
qui est un emballage de zone de texte à l'intérieur d'une colonne de la grille avec la largeur *. Je veux que la boîte de texte prenne toute la largeur disponible (d'où *) mais quand un utilisateur ajoute du texte, je veux qu'il s'enroule quand il arrive à la fin de la ligne (avec l'espace disponible).
Actuellement ce qui précède donnera une zone de texte avec toute la largeur, mais lorsque le texte est entré, la largeur de la zone de texte ne fait que croître avec le texte.
Je sais que je peux définir MaxWidth = ?, mais le point que la colonne est * est que je ne sais pas quelle est la taille de la colonne.
Je voudrais dire à la zone de texte "ne pas grandir, tout ce que wpf vous donne le prend et n'augmente pas un pixel de plus au-dessus de ça". Je pense que ce que je veux est impossible, parce que wpf demande au contrôle quelle taille il veut être et quand l'utilisateur ajoute plus de texte qui dépasse la limite il demande gentiment plus d'espace et étend sa largeur à l'infini.
Cela semble correct, mais cela ne fonctionne pas parce que la propriété ActualWidth de la ColumnDefinition n'est pas DependencyProperty et MaxWidth sera toujours 0. Testé juste maintenant ... – Vale