【问题标题】:How do i show all Listpicker items in current page in WP7?如何在 WP7 的当前页面中显示所有 Listpicker 项目?
【发布时间】:2012-11-07 22:19:31
【问题描述】:

我在 ScrollViewer 内的 Listbox 中使用 Listpicker。如果 Listpicker 中的项目数为 3(或小于 3),则 Listpicker 在当前页面中以 ComboBox 的形式打开。但如果项目数超过 3,它会在另一个页面中打开,而不是作为 ComboBox。我该如何解决这个问题?

【问题讨论】:

    标签: windows-phone-7 listpicker


    【解决方案1】:

    您可以通过设置 ListPicker 的ItemCountThreshold 属性来设置显示在其他页面上的项目数。例如。当有超过 3 个项目可供选择时,设置 ItemCountThreshold=3 将强制 ListPicker 在新页面上显示项目。

    可以找到有关 ListPicker 属性的更多信息,例如。这里:ListPicker for WP7 in depth

    【讨论】:

    • 这似乎不再可用。
    【解决方案2】:

    ListPicker 是 Silverlight Toolkit for Windows Phone 中的一个新控件。用户可以选择其他项目,例如 Combobox,但 ListPicker 比 Combobox 具有更多功能。当您有大约 1->4 的小项目时,它会将数据显示为 Combobox,如果有更多项目 Listpicker 会将数据显示为 ListBox。

    请参考此 Link 以获得完美的想法。

    【讨论】:

      【解决方案3】:

      阅读this article,一定要注意“ItemCountThreshold”属性。

      ItemCountThreshold 是一个 int 类型的依赖属性。它指定将在展开模式下显示的最大项目数。默认情况下,包含五个或更少项目的列表会原地展开,而包含更多项目的列表会切换到全屏选择界面。也可以设置为 0 来切换 Full 模式,或者设置一个非常大的数字来切换 Expanded 模式。

      【讨论】:

        【解决方案4】:

        虽然工具包团队建议遵守限制,但有一些解决方法可以解决此问题。值可以通过代码设置,也可以通过绑定设置。

        <toolkit:ListPicker ItemCountThreshold="{Binding Hugo,FallbackValue=10}">(...)
        <!-- Hugo is a bogus binding that does not really exist -->
        

        查看我的详细信息answer to a related question

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-05-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-05-05
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多