[英]WPF - Can't right-align a TextBlock when using StringFormat
我在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}}" />
如果我從這篇文章中做到這一點 ,它可以工作,但可以使所有列正確對齊。 我希望數字右對齊,日期中心和文本左。
<ListView.Resources>
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Right" />
</Style>
</ListView.Resources>
有什么線索嗎?
將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>
將您的資源更改為HorizontalContentAlignment到Stretch,這將允許ListView中每個單元格的內容占據整個空間。 然后,您的HorizontalAlignment屬性將起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.