从WP7 Silverlight Toolkit以编程方式关闭ListPicker

时间:2010-11-16 06:05:51

标签: silverlight windows-phone-7 silverlight-toolkit windows-phone

由于5.2.4.c的要求,我的应用程序被市场拒绝(后退按钮必须关闭菜单或对话框并取消后退导航)。我正在使用Silverlight Toolkit中的ListPicker,这就是造成失败的原因:当ListPicker打开时按下后退按钮,而不是关闭ListPicker并取消后退导航。

这似乎很容易修复:如果用户按下后退按钮并且ListPicker打开,我关闭它并取消后退导航。但是,我还没有看到一种以编程方式检测ListPicker是打开还是关闭ListPicker的方法。

我错过了什么吗?我怎么能解决这个错误?

2 个答案:

答案 0 :(得分:3)

再一次,我过早地提出了这个问题。答案在这里:http://silverlight.codeplex.com/workitem/7643

答案 1 :(得分:1)

解决方案是

protected override void OnBackKeyPress(CancelEventArgs e)
{
    base.OnBackKeyPress(e);
    if (yourListPicker.ListPickerMode == ListPickerMode.Expanded)
    {
        yourListPicker.ListPickerMode = ListPickerMode.Normal;
        e.Cancel = true;
    }
}