Auto clip and append dots in WPF label

2020-06-06 08:42发布

问题:

How can I auto clip text and append dots on a label if the current text doesn't fits to its width in WPF?

回答1:

Put a TextBlock inside your label and set TextTrimming to CharacterEllipsis or WordEllipsis

<Label>
     <TextBlock TextTrimming="CharacterEllipsis">Hello World</TextBlock>
</Label>


回答2:

It's also possible to use AccessText within the Label like this:

<StackPanel Orientation="Horizontal">
<Label VerticalAlignment="Center" Width="50"
        Target="{Binding ElementName=txtName}">
    <AccessText Text="_First Name" TextTrimming="CharacterEllipsis"  />
</Label>
<TextBox Name="txtName" VerticalAlignment="Center" Width="120"/>

With this solution the access key for a control (e.g. Alt+F) still works.