我在 ScrollViewer 内的 Listbox 中使用 Listpicker。如果 Listpicker 中的项目数为 3(或小于 3),则 Listpicker 在当前页面中以 ComboBox 的形式打开。但如果项目数超过 3,它会在另一个页面中打开,而不是作为 ComboBox。我怎么解决这个问题?
4 回答
您可以通过设置ItemCountThreshold
ListPicker 的属性来设置显示在其他页面上的项目数。例如。当有超过 3 个项目可供选择时,设置 ItemCountThreshold=3 将强制 ListPicker 在新页面上显示项目。
可以找到有关 ListPicker 属性的更多信息,例如。此处:深入了解 WP7 的 ListPicker
While the toolkit team advised to adhere to the restriction, there are workarounds for this issue. A value can be set via code and also via a binding.
<toolkit:ListPicker ItemCountThreshold="{Binding Hugo,FallbackValue=10}">(...)
<!-- Hugo is a bogus binding that does not really exist -->
See my detailed answer to a related question.
阅读这篇文章,一定要注意“ItemCountThreshold”属性。
ItemCountThreshold 是 int 类型的依赖属性。它指定将在展开模式下显示的最大项目数。默认情况下,包含五个或更少项目的列表就地展开,而包含更多项目的列表切换到全屏选择界面。也可以设置为 0 来切换 Full 模式,或者设置一个非常大的数字来切换 Expanded 模式。
ListPicker 是 Silverlight Toolkit for Windows Phone 中的一个新控件。用户可以选择其他项目,如 Combobox,但 ListPicker 比 Combobox 具有更多功能。当您有大约 1->4 的小项目时,它会将数据显示为 Combobox,如果有更多项目 Listpicker 会将数据显示为 ListBox。
请参阅此链接以获得完美的想法。