WP7 Tombstoning - невозможно установить значение выбранного элемента списка из данных состояния - PullRequest
0 голосов
/ 05 октября 2011

Я настраиваю надгробную плиту для простого приложения WP7.У меня есть список элементов, и я хочу сохранить ListBox.SelectedIndex в памяти состояний, а по возвращении на страницу выбрать этот элемент в списке.

Когда я пытаюсь использовать следующий код, кажется, что сохранение значения работает (я подтвердил, отобразив его в MessageBox), но элемент списка не выбран.

protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
        {

            if (State.ContainsKey("activeResult"))
            {
                listBox1.SelectedIndex = Convert.ToInt32(State["activeResult"]);
            }
            base.OnNavigatedTo(e);
        }

        protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)
        {
            State["activeResult"] = listBox1.SelectedIndex;
            base.OnNavigatedFrom(e);
        }

Код компилируетсябез ошибок - но элемент списка просто никогда не выбирается.Спасибо за вашу помощь!ура будет

1 Ответ

3 голосов
/ 05 октября 2011

Дикая догадка говорит, что вы привязываете данные к списку , после вы установили SelectedIndex, и поэтому он не имеет никакого эффекта (если не равен нулю).

Решение: убедитесь, что ваша ViewModel инициализирована и загружена перед тем, как установить SelectedIndex или привязать данные к свойству SelectedIndex и установить его на ViewModel, а не на компонент пользовательского интерфейса.

...