我在GridViewColumn中有一个TextBlock。我使用StringFormat格式化为货币。这会导致字段左对齐。我无法正确对齐。尝试了HorizontalAlignment和TextAlignment,但没有任何效果。
<TextBlock HorizontalAlignment="Right" Text="{Binding Path=Amount, StringFormat={}{0:€ # ##0}}" />
<TextBlock TextAlignment="Right" Text="{Binding Path=Amount, StringFormat={}{0:€ # ##0}}" />
如果我执行此操作from this post,它可以正常对齐所有列。我希望数字右对齐,日期居中和文字左。
<ListView.Resources>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Right" />
</Style>
</ListView.Resources>
有什么线索吗?
答案 0 :(得分:2)
将HorizontalContentAlignment
设为Stretch
。这将有效:
<ListView>
<ListView.Resources>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>
</ListView.Resources>
<ListView.View>
<GridView>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock HorizontalAlignment="Right"
Text="{Binding Path=Amount, StringFormat={}{0:€ # ##0}}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
答案 1 :(得分:0)
将您的资源更改为HorizontalContentAlignment to Stretch,这将允许ListView中每个单元格的内容占用整个空间。然后您的HorizontalAlignment属性将起作用。