我使用XamDataGrid来展示带有非常长的表头名称的表格。表头名称最重要的部分是它的后缀。
是否有一种方法可以配置列标题,当列宽小于文本大小时,我将看到后缀作为标题?
例子:
所需结果:
[...SUFFIX1][...SUFFIX2]
与默认行为不同,我有:
[Prefix....][Prefix....]
我使用XamDataGrid来展示带有非常长的表头名称的表格。表头名称最重要的部分是它的后缀。
是否有一种方法可以配置列标题,当列宽小于文本大小时,我将看到后缀作为标题?
例子:
所需结果:
[...SUFFIX1][...SUFFIX2]
与默认行为不同,我有:
[Prefix....][Prefix....]
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<TextBlock VerticalAlignment="Stretch" HorizontalAlignment="Stretch" FlowDirection="RightToLeft" Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content}"
TextTrimming="CharacterEllipsis">
</TextBlock>
</DataTemplate>
</Setter.Value>
为了显示后缀部分,您可以使用文本换行并增加LabelPresenters的高度以换行文本。这是一个更好的方法来显示整个列名,它看起来也很好。(显然如果这符合您的目的)
<Setter Property="Height" Value="50"/>
在样式中设置labelPresenter的高度,效果如下:
但是如果您要严格按照您所提到的要求,则使用以下链接中的控件,然后将该控件用于labelPresenter内容模板。