wpf:当文本对于 1 行来说太大时,使文本块高度扩大

Posted

技术标签:

【中文标题】wpf:当文本对于 1 行来说太大时,使文本块高度扩大【英文标题】:wpf: making textblock height expand when text gets too big for 1 line 【发布时间】:2010-11-29 10:27:47 【问题描述】:

我有一个带有 itemtemplate 的列表视图:

<ListView x:Name="messages" HorizontalAlignment="Left" 
    Background="x:Null" BorderBrush="x:Null" Foreground="Black">
    <ListView.ItemTemplate>
        <DataTemplate>
            <TextBlock Style="DynamicResource h3" Text="Binding"
                Margin="10" MaxWidth="850"/>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

此列表视图位于垂直堆栈面板中。所以它的宽度和stackpanel的宽度一样。

列表视图必须显示可能很长的消息。我正在尝试确保当消息对于可用宽度而言太长时,文本块会获得额外的高度,并且文本会显示在 2 行上。

我可以用谷歌搜索很多方法来实现固定高度,但由于我事先不知道我是否需要超过 1 行,所以我想确保它自动发生。 我不希望每个项目的高度都为 2 行,仅在需要时。

我怎样才能做到这一点?

【问题讨论】:

【参考方案1】:

您是否尝试过 TextWrapping 属性?看来它会做你想做的。

【讨论】:

以上是关于wpf:当文本对于 1 行来说太大时,使文本块高度扩大的主要内容,如果未能解决你的问题,请参考以下文章

ListView下面的WPF按钮 - 当ListView太大时消失

如何计算WPF中的字体高度?

wpf datagrid row height 行高自动计算使每行行高自适应文本

使文本块的宽度自动

代码对于 try 块来说太大了

当整个文件太大时如何在python中使用mmap