0

当文本的最后一行会导致文本框的底部水平切片时,我试图让块中的文本自行截断:

带有文本被截断的图标

<DataTemplate x:Key="largeIconTemplate">
        <StackPanel Width="140" Height="180" >
            <Grid Width="120" Height="120" HorizontalAlignment="Center">
                <Image Source="{Binding IconName, Converter={x:Static converters:StringPathToBitmapImageConverter.Instance}}" Margin="6,6,6,9"/>
            </Grid>
            <TextBlock Text="{Binding Description}" TextWrapping="Wrap" TextAlignment="Center" Margin="0,0,0,1" />
        </StackPanel>
    </DataTemplate>

设置 TextTrimming 选项似乎没有什么区别。如何让 TextBlock 中的文本正确截断?即“通过居中和环绕尽可能多地适应行,但如果文本将呈现为部分截断,则截断文本。”

4

1 回答 1

0

DataTemplate错了。aStackPanel不是合适的容器。

使用 aDockPanel代替:

<DataTemplate x:Key="largeIconTemplate">
    <DockPanel Width="140" Height="180">
        <Image DockPanel.Dock="Top" Margin="6,6,6,9"
               Source="{Binding IconName, Converter={x:Static converters:StringPathToBitmapImageConverter.Instance}}"/>

        <TextBlock Text="{Binding Description}" 
                   TextTrimming="CharacterEllipsis" 
                   TextWrapping="Wrap" 
                   TextAlignment="Center" 
                   Margin="0,0,0,1" />
    </DockPanel>
</DataTemplate>
于 2013-11-12T22:12:01.697 回答