作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Xamarin.Forms,但我还没有找到如何为 UWP 设置多行标签。在我的实际项目中,我在 Grid
中有标签在 ViewCell
在 ListView
.对于下面的示例,我已将其放入 StackLayout
:
<StackLayout Orientation="Horizontal" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand">
<Label x:Name="titleLabel" Text="some long text" LineBreakMode="WordWrap" />
<Label x:Name="valueLabel" Text="perhaps a much, much, much, much, much, much, much, much, much longer text" LineBreakMode="WordWrap" />
</StackLayout>
StackLayout
使用它在 UWP 上正确显示多行文本。
TextBlock
作为标签,但结果是一样的 - 文本被切断。
<StackPanel Orientation="Horizontal">
<TextBlock Text="oh this is a label" TextWrapping="Wrap" />
<TextBlock Text="and this should be a very, very, very, very, very, very, very, very, very, very long text" TextWrapping="Wrap" />
</StackPanel>
最佳答案
如果您设置了 WidthRequest
对于每个标签,正确显示多行标签(通过增加高度)。
替代解决方案是例如将标签放入 Grid
并使用固定的列宽。
这种行为的原因可能是 StackLayout
有一个 default width of Auto
(如果没有明确设置)并且标签不知道它可以有多大。如果您设置宽度,标签可以增长到该大小。
This post让我想到了这个主意。
关于xamarin - 如何在 StackLayout/Grid 中为 UWP 创建多行标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40043382/
我是一名优秀的程序员,十分优秀!