2010-11-14 37 views
5

J'ai un DataGrid avec son FlowDirection défini sur "RightToLeft". Le problème est lors de l'affichage des nombres négatifs, le signe moins est indiqué sur le côté opposé. Définir FlowDirection de la cellule elle-même à "LeftToRight" le fixe, mais alors la bordure gauche de la cellule se déplace vers la droite, donc je n'ai pas de bordure sur la gauche, et une double bordure sur la droite. Comment puis-je résoudre ce problème?Modification de FlowDirection d'une cellule dans DataGrid de Wpf

Répondre

5

Vous allez devoir définir FlowDirection sur le TextBox plutôt que sur le DataGridCell. Si vous utilisez un DataGridTextColumn alors

<DataGridTextColumn ...> 
    <DataGridTextColumn.ElementStyle> 
     <Style TargetType="TextBlock"> 
      <Setter Property="FlowDirection" Value="LeftToRight" /> 
     </Style> 
    </DataGridTextColumn.ElementStyle> 
    <DataGridTextColumn.EditingElementStyle> 
     <Style TargetType="TextBox"> 
      <Setter Property="FlowDirection" Value="LeftToRight" /> 
     </Style> 
    </DataGridTextColumn.EditingElementStyle> 
</DataGridTextColumn> 
+0

Merci Meleak! En ce moment j'utilise DataGridTemplateColumn au lieu de TextColumn, qui résout le problème, mais je préfère utiliser le TextColumn. Je vais essayer. – visualstudiostud