2010-11-14 16 views
5

Ich habe ein DataGrid mit seiner FlowDirection auf "RightToLeft" gesetzt. Problem ist, wenn negative Zahlen angezeigt werden, das Minuszeichen wird auf der gegenüberliegenden Seite angezeigt. Wenn die FlowDirection der Zelle selbst auf "LeftToRight" gesetzt wird, wird der linke Rand der Zelle nach rechts verschoben, so dass ich links keine Grenze und rechts eine doppelte Grenze habe. Wie kann ich das beheben?Ändern der FlowDirection einer Zelle in Wpf DataGrid

Antwort

5

Sie müssen FlowDirection für die TextBox und nicht für die DataGridCell festlegen. Wenn Sie eine DataGridTextColumn verwenden, dann

<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

Vielen Dank Meleak! Im Moment verwende ich DataGridTemplateColumn statt der TextColumn, die das Problem löst, aber ich bevorzuge die TextColumn. Ich werde es versuchen. – visualstudiostud

Verwandte Themen