【问题标题】:Windows phone 7.1 ListPicker, easy way to go full mode?Windows phone 7.1 ListPicker,进入完整模式的简单方法?
【发布时间】:2011-09-05 22:35:47
【问题描述】:

我正在尝试将ListPicker 控制器与ListPickerMode="Full" 一起使用,以获取全屏选择窗口。但是,当我尝试时它只会产生错误

“System.Windows.dll 中发生了“System.Windows.Markup.XamlParseException”类型的第一次机会异常

附加信息:设置属性Microsoft.Phone.Controls.ListPicker.ListPickerMode 引发异常。 [行:49 位置:57]"

这是我的代码:

<toolkit:ListPicker x:Name="OutputSelector" ListPickerMode="Full"   
Margin="0,542,6,0" Header="Output Type" Width="450" VerticalAlignment="Top" />

如果有帮助的话,我会在 C# 中使用设置为 ItemSource 的列表填充我的 ListPicker。 另一件事是,当我尝试在 xml 中编写“ListPickerMode”时,它不会将其作为一个选项,但是当我写完整个内容时,它会建议“完整”“扩展”和“正常”。

如果我向 ListPicker 添加 5 个项目,它会自动使用 FullMode,并且我尝试更改 ItemCountThreshold="0" 但这只会产生更多错误。

我正在使用 Windowns Phone 7.1 OS 2011 年 8 月版本。

第一次接触 Windows Phone 编程的可能只有我一个笨蛋 :)

更新!

看起来 ItemCountThreshold 和 ListPickerMode 已在 7.1 或其他版本中被删除,至少在 XAML 部分,而不是 C# 部分,它们是只读的。

解决我的问题!

<toolkit:ListPicker x:Name="OutputSelector" ExpansionMode="FullScreenOnly"   
Margin="0,542,6,0" Header="Output Type" Width="450" VerticalAlignment="Top" />

ExpansionMode 将使 Listpicker 全屏显示或展开。

【问题讨论】:

  • 你可以回答你自己的问题,提供一个答案然后标记它

标签: c# windows-phone-7.1


【解决方案1】:

如 silverlight 工具包 [1] 的问题跟踪器中所述,不应设置 ItemCountThreshold(也不能使用简单的 xaml 设置)。

但是,有两种解决方法可以解决此问题。如果您不介意使用代码隐藏,请通过 SetValue 设置属性:

//e.g., in the constructor, just after InitializeComponent();
ListPicker.SetValue(Microsoft.Phone.Controls.ListPicker.ItemCountThresholdProperty, 0);

要在 xaml 中设置值,可以使用绑定:

<toolkit:ListPicker ItemCountThreshold="{Binding Hugo,FallbackValue=0}">(...)

在此示例中,我使用了一个虚假的绑定表达式并使用 FallbackValue 设置值。当然,实际工作的绑定也应该可以工作。 xaml 方法仅在 WP8 SDK 上进行了测试,但它应该也可以在 7.1 上运行。

编辑:刚刚发现 xaml 方法破坏了设计器。

[1]http://silverlight.codeplex.com/workitem/9742

【讨论】:

    【解决方案2】:

    作者提出的解决方案(移到这里以获得更好的可见性):

    看起来 ItemCountThreshold 和 ListPickerMode 已被删除 7.1 或其他版本,至少在 XAML 部分,而不是 C# 部分,它们是只读的。

    解决我的问题!

    <toolkit:ListPicker x:Name="OutputSelector" ExpansionMode="FullScreenOnly"   
    Margin="0,542,6,0" Header="Output Type" Width="450" VerticalAlignment="Top" />
    

    ExpansionMode 将使 Listpicker 全屏显示或 展开。

    【讨论】:

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