我Expander为a定义了以下内容DataGrid.
<Expander IsExpanded="True" HorizontalAlignment="Stretch" Background="Blue">
<Expander.Header>
<Grid HorizontalAlignment="Stretch" Background="BurlyWood">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Path=Name, StringFormat=\{0:D\}}" FontWeight="Bold" />
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Grid.Column="1">
<TextBlock Text="Total : "/>
<TextBlock Text="{Binding Path=Items, Converter={StaticResource sumConverter}}" FontWeight="Bold"/>
</StackPanel>
</Grid>
</Expander.Header>
<ItemsPresenter />
</Expander>
Run Code Online (Sandbox Code Playgroud)
我需要在左侧显示项目名称,在组头标题的右端显示总和.但是我得到的是:

如何将"总计"移动到标题的右端?
我有同样的问题,如果我记得正确的问题是,ContentPresenter对于Expander.Header不关心HorizontalAlignment的Expander.我找到了一个很好的解决方法:
<Expander.Header>
<Grid HorizontalAlignment="{Binding Path=HorizontalAlignment, RelativeSource={RelativeSource AncestorType={x:Type ContentPresenter}}, Mode=OneWayToSource}">
...
</Grid>
</Expander.Header>
Run Code Online (Sandbox Code Playgroud)