如何在 WPF ListBox 中禁用水平滚动?

Posted

技术标签:

【中文标题】如何在 WPF ListBox 中禁用水平滚动?【英文标题】:How can I disable horizontal scrolling in a WPF ListBox? 【发布时间】:2010-09-27 06:57:56 【问题描述】:

这似乎是一个荒谬的简单问题,但 Google 和 Stack Overflow 搜索却一无所获。当项目占用的水平空间多于框中的可用空间时,

【问题讨论】:

【参考方案1】:

在 XAML 中:

<ListBox ScrollViewer.HorizontalScrollBarVisibility="Disabled" />

在 C# 中:

myListBox.SetValue(
    ScrollViewer.HorizontalScrollBarVisibilityProperty,
    ScrollBarVisibility.Disabled);

【讨论】:

如果它不适合你,那么使用这个简单的答案>>***.com/a/1739298/2123400【参考方案2】:

如果您从代码隐藏创建列表框并希望在 XAML 中进行更改:

<UserControl.Resources>
    <Style TargetType="x:Type ListBox" x:Key="x:Type ListBox" >
        <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Hidden" />
    </Style>
</UserControl.Resources>

【讨论】:

以上是关于如何在 WPF ListBox 中禁用水平滚动?的主要内容,如果未能解决你的问题,请参考以下文章

WPF 禁用ItemControl 自动滚动

WPF listbox 水平方向的左右滚动条用两个button代替,请问这个button事件怎么写?最好能给我个demo。

如何在 ListBox 中禁用 ScrollViewer?

C# wpf怎么在grid添加自定义控件时显示滚动条

WPF ListBox 自动滚动到结束

每次我在 WPF 中加载时如何使 Listbox 的 ScrollViewer 滚动到顶部