Infragistics XamDatagrid列的左右调整大小

3

我使用XamDataGrid来展示带有非常长的表头名称的表格。表头名称最重要的部分是它的后缀。

是否有一种方法可以配置列标题,当列宽小于文本大小时,我将看到后缀作为标题?

例子:

所需结果:

[...SUFFIX1][...SUFFIX2]

与默认行为不同,我有:

[Prefix....][Prefix....]
1个回答

3
一种方法是为LabelPresenter创建ContentTemplate:
<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>

结果看起来像这样:

enter image description here

为了显示后缀部分,您可以使用文本换行并增加LabelPresenters的高度以换行文本。这是一个更好的方法来显示整个列名,它看起来也很好。(显然如果这符合您的目的)

<Setter Property="Height" Value="50"/>  

在样式中设置labelPresenter的高度,效果如下:

enter image description here

但是如果您要严格按照您所提到的要求,则使用以下链接中的控件,然后将该控件用于labelPresenter内容模板。

带省略号的文本框


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接