Windows phone 7 从其他页面返回后,列表框中的选定项变灰

Windows phone 7 从其他页面返回后,列表框中的选定项变灰,windows-phone-7,Windows Phone 7,我有两页:P1和P2 在P1中 a) 从IsolatedStorage加载数据并将数据绑定到listBox1发生在P1中的按钮单击事件中 b) 用户选择一个项目并导航到P2 示例:用户选择CarModel_1 在P2中: 用户按P2中的后退键返回P1 问题是: 从P2返回时,列表框1中的选定项目变灰或无法单击以转到P2 示例:CarModel_1变灰或不可单击 其余的可点击 谢谢你在这方面的帮助 谢谢解决此问题的一种常见方法是为列表框设置SelectedIndex=-1 如果您创建了一个默认的数

我有两页:P1和P2

在P1中

a) 从IsolatedStorage加载数据并将数据绑定到listBox1发生在P1中的按钮单击事件中

b) 用户选择一个项目并导航到P2

示例:用户选择CarModel_1

在P2中: 用户按P2中的后退键返回P1

问题是:

从P2返回时,列表框1中的选定项目变灰或无法单击以转到P2

示例:CarModel_1变灰或不可单击

其余的可点击

谢谢你在这方面的帮助


谢谢

解决此问题的一种常见方法是为列表框设置SelectedIndex=-1

如果您创建了一个默认的数据绑定项目,您可以看到这一点

这是生成的代码

private void MainListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    // If selected index is -1 (no selection) do nothing
    if (MainListBox.SelectedIndex == -1)
        return;

    // Navigate to the new page
    NavigationService.Navigate(new Uri("/DetailsPage.xaml?selectedItem=" + MainListBox.SelectedIndex, UriKind.Relative));

    // Reset selected index to -1 (no selection)
    MainListBox.SelectedIndex = -1;
}
替代方法是实现本问题中概述的手势服务


解决此问题的一种常见方法是为列表框设置SelectedIndex=-1

如果您创建了一个默认的数据绑定项目,您可以看到这一点

这是生成的代码

private void MainListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    // If selected index is -1 (no selection) do nothing
    if (MainListBox.SelectedIndex == -1)
        return;

    // Navigate to the new page
    NavigationService.Navigate(new Uri("/DetailsPage.xaml?selectedItem=" + MainListBox.SelectedIndex, UriKind.Relative));

    // Reset selected index to -1 (no selection)
    MainListBox.SelectedIndex = -1;
}
替代方法是实现本问题中概述的手势服务


@Mick N:你知道如果不重置选择,为什么会发生这种行为吗?我很好奇…是的,如果没有“改变”,它不会触发选择改变。理想的情况是单击/点击事件,但这似乎在许多控件上都不可用(按钮除外)。至少有一些合理的解决办法。@Mick N:谢谢。它现在似乎起作用了。我将在列表框中检查一些条件。@Mick N:谢谢你的回答。@Mick N:你知道如果不重置选择,为什么会发生这种行为吗?我很好奇…是的,如果没有“改变”,它不会触发选择改变。理想的情况是单击/点击事件,但这似乎在许多控件上都不可用(按钮除外)。至少有一些合理的解决办法。@Mick N:谢谢。它现在似乎起作用了。我将在列表框中检查一些条件。@Mick N:谢谢你的回答。