WPF-Can';使用StringFormat时,请不要右对齐文本块
我在GridViewColumn中有一个文本块。我使用StringFormat格式化为货币。这将导致字段左对齐。我不能把它对齐。尝试了水平对齐和文本对齐,但均无效WPF-Can';使用StringFormat时,请不要右对齐文本块,wpf,xaml,Wpf,Xaml,我在GridViewColumn中有一个文本块。我使用StringFormat格式化为货币。这将导致字段左对齐。我不能把它对齐。尝试了水平对齐和文本对齐,但均无效 <TextBlock HorizontalAlignment="Right" Text="{Binding Path=Amount, StringFormat={}{0:€ # ##0}}" /> <TextBlock TextAlignment="Right" Text="{Binding Path=Amount,
<TextBlock HorizontalAlignment="Right" Text="{Binding Path=Amount, StringFormat={}{0:€ # ##0}}" />
<TextBlock TextAlignment="Right" Text="{Binding Path=Amount, StringFormat={}{0:€ # ##0}}" />
如果我这样做,它工作,但右对齐所有列。我要数字右对齐,日期居中,文本左对齐
<ListView.Resources>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Right" />
</Style>
</ListView.Resources>
有什么线索吗?请将资源更改为HorizontalContentAlignment以拉伸,这将允许ListView中每个单元格的内容占据整个空间。然后,您的HorizontalAlignment属性将起作用。将
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>
这样做很好。不知道我是否明白为什么。同样的回答也谢谢乔尔。