在ListBox内的UserControl中,我在Grid中有一个比例宽度(宽度=" *")的TextBlock,我想要剩余的宽度对于网格,但每当我将ListBox的大小调整为剪切该TextBlock内容的大小时,我都会得到一个滚动条。如何剪切TextBlock宽度以便我不会获得水平滚动条?理想情况下用省略号剪裁它。
编辑:忘记提及ListBox。答案 0 :(得分:1)
列表框正在滚动,因为它的默认行为是HorizontalScrollBarVisibility
到Auto
。
尝试将此属性设置为已禁用:
<ListBox ScrollViewer.HorizontalScrollBarVisibility="Disabled">
对于剪裁到椭圆,这更复杂。您可以使用Clip
属性轻松剪切到省略号:
<TextBlock Text="Some very long thing that I'm putting in here to clip" Background="Blue">
<TextBlock.Clip>
<EllipseGeometry Center="100,8" RadiusX="100" RadiusY="8" />
</TextBlock.Clip>
</TextBlock>
但是,要保持Center,RadiusX和RadiusY的顺序,你必须将它绑定到文本框的高度和宽度(可能使用转换器将这些值的一半)。