XAML - TextTrimming 不适用于 LineBreaks?
Posted
技术标签:
【中文标题】XAML - TextTrimming 不适用于 LineBreaks?【英文标题】:XAML - TextTrimming does not work with LineBreaks? 【发布时间】:2014-10-23 01:22:03 【问题描述】:为什么 TextTrimming 在第一个 TextBlock 上有效,而在第二个无效? 我在我的 xaml 上使用 LineBreaks,这是我需要显示的文本的一部分。
代码:
<Window x:Class="WpfApplication2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid VerticalAlignment="Center">
<StackPanel>
<TextBlock TextTrimming="WordEllipsis" TextWrapping="Wrap" Width="20" Height="20" Background="Yellow">
1 2 3 4 5
</TextBlock>
<TextBlock TextTrimming="WordEllipsis" TextWrapping="Wrap" Width="20" Height="20" Background="Aqua">
1
<LineBreak/>
2
<LineBreak/>
3
<LineBreak/>
4
<LineBreak/>
5
</TextBlock>
</StackPanel>
</Grid>
输出:
【问题讨论】:
是不是因为第二个例子中每个数字都在一个新行上,所以不需要WordEllipsis 你只是重复了我的问题。 不是真的,第二行有 5 行,这些行都没有比 TextBlock 长,所以没有应用省略号,设置 TextBlock 高度不会修改字符串并删除换行符比文本块长的一行。 所以,正如我所问的,它是每个 LINE,而不是每个 TextProperty? 【参考方案1】:您误解了trim
的含义。修剪处理行长。您的第二个示例的行长很短,但有很多行。这与长线不同。
因此修剪不是您需要的。
【讨论】:
解决办法是什么?修剪是我需要的,但以不同的方式。如果段落不适合文本块,我希望它有省略号以上是关于XAML - TextTrimming 不适用于 LineBreaks?的主要内容,如果未能解决你的问题,请参考以下文章
RxUI ObservableAsPropertyHelper 不适用于 XAML 绑定