在Listbox中有一个项目溢出
这个问题的出现的原因是在代码中重新定义了控件模板,但没有使用TemplateBinding来设置ScrollViewer.HorizontalScrollBarVisibility属性。因此,像这样设置ListBox属性是无效的:
因为已经有了模板,可以通过以下方式修复问题:1)正确定义模板绑定 2)直接设置ScrollViewer属性(在控件模板内部)。
以下是错误的部分:
你将其设置为Auto。改为Disabled或者像这样操作:
非常感谢!这样修复了溢出问题,因为父UserControl将取得最大宽度并减少列表框中每个元素的大小。但是我想保持UserControl(或者listBox)的宽度为400。通过使用WpfInspector,我发现“ItemsPresenter”的宽度大约为2500...我认为这就是问题所在...我正在解决这个问题。
ItemsPresenter的宽度为2500,是因为你告诉它使用水平StackPanel来显示你的项目(在ItemsPanelTemplate中)。那么你希望你的项目如何显示呢?