我正在使用文本块在产品图片下显示产品说明。文字必须固定100px宽,但高度可以增长到30px高。如果文本仍然不适合,则必须显示省略号。这是我的xaml:
<StackPanel>
<!-- I use canvas here to reserve some space for animation (grow/shrink) -->
<Canvas Height="75" Width="75">
<Image x:Name="picture" Height="64" Width="64" .../>
<Canvas/>
<TextBlock Width="100" MaxHeight="30"
TextTrimming="CharacterEllipsis" TextWrapping="Wrap"
Text="{Binding Path=ProductDescription}"
HorizontalAlignment="Center" VerticalAlignment="Top" TextAlignment="Center">
</StackPanel>
描述可以有多行。例如,“无线鼠标\ nQuantity:20”。它在XP上看起来不错,但在Windows 7上只显示第一行并且没有省略号。有人能在我的xaml中发现问题吗?
答案 0 :(得分:2)
您的示例中有几个错误:应该,“... /&gt;”是无效的XAML,并且您的TextBlock没有结束标记。
以下XAML在Windows 7上为我工作正常:
<StackPanel>
<!-- I use canvas here to reserve some space for animation (grow/shrink) -->
<Canvas Height="75" Width="75">
<Image x:Name="picture" Height="64" Width="64" />
</Canvas>
<TextBlock Width="100" MaxHeight="30"
TextTrimming="CharacterEllipsis" TextWrapping="Wrap"
Text="I use canvas here to reserve some space for animation (grow/shrink)"
HorizontalAlignment="Center"
VerticalAlignment="Top"
TextAlignment="Center" />
</StackPanel>
答案 1 :(得分:0)
根据30的字体大小MaxHeight
几乎只有一行文字,因此文本块的高度不能增长。改变它或完全删除它。