WPF Button 文本尽可能换行,然后滚动
Posted
技术标签:
【中文标题】WPF Button 文本尽可能换行,然后滚动【英文标题】:WPF Button text wrap as far as possible and then scroll 【发布时间】:2010-07-24 16:44:52 【问题描述】:随着其容器的宽度缩小,我试图让 Button 1 将其文本换行,直到它不再这样做,此时水平滚动条启动。现在,该按钮认识到它有足够的空间由于滚动查看器,根本不换行。
有什么想法吗?
【问题讨论】:
这是我对代码的期望。除非您在网格或文本块上设置宽度,否则它将尽可能宽。 @ChrisF - 我同意。这也是我对上述代码的期望。我很快写了这个,然后想,好吧,我要在 TextBlock 中添加一些附加的行为。然后我想,也许我应该在 SO 上发布这个来获得一些反馈,然后再深入测量。 这一切都将取决于您首先希望文本在哪里换行。每个字之后? 10个字之后? 【参考方案1】:你去吧:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<WrapPanel>
<Button>
<TextBlock Text="Button 1 - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
TextWrapping="Wrap" />
</Button>
</WrapPanel>
<Button Content="Button 2" Grid.Column="1" />
</Grid>
【讨论】:
以上是关于WPF Button 文本尽可能换行,然后滚动的主要内容,如果未能解决你的问题,请参考以下文章
WPF:带有 WrapPanel 的 ListBox,垂直滚动问题
dotnet 读 WPF 源代码笔记 简单聊聊文本布局换行逻辑
WPF listbox 水平方向的左右滚动条用两个button代替,请问这个button事件怎么写?最好能给我个demo。