- in Windows Phone 7, sto usando una casella di riepilogo.
- Supponiamo che ci siano 200 articoli.
- Ora seleziono il 150 ° elemento dell'elenco
- Desidero che l'elenco carichi e selezioni (e mostri) il 150 ° elemento in cima all'elenco dopo il caricamento.
PROBLEMA:
- Sto usando il HookScrollViewer() come accennato in questa pagina (ListBox offset in WP7)
- La prima volta che l'oggetto viene caricato l'elenco non mostra l'elemento giusto (per esempio mostra 148 ° elemento).
- Esco da quella pagina e faccio nuovamente clic sulla voce 150.
- Ora l'indice della lista è corretto e mostra 150esimo elemento esattamente in alto.
DOMANDA:
- Am I utilizzando la soluzione giusta?
- Cosa c'è di sbagliato sto facendo, ho cercato di identificare la soluzione, ma non è riuscito!
SUGGERIMENTO:
- Se si dispone di un Windows Phone, si prega di scaricare l'applicazione: http://tinyurl.com/9298cdx
- Aprire qualsiasi capitolo e segnalibro qualcosa (premendo a lungo) al centro del capitolo.
- Chiudere l'applicazione e riaprire l'applicazione.
- Fare clic sul segnalibro per aprirlo.
- La prima volta non si troverà nella posizione esatta.
- Ora NON chiudere l'app, basta premere il pulsante indietro e fare nuovamente clic sul segnalibro.
- Questa volta la posizione è corretta!
- La domanda è: cosa c'è che non va la prima volta?
IL CODICE DELLA PAGINA DI LETTURA:
- Per rendere ancora più semplice, il codice può essere scaricato: https://docs.google.com/file/d/0B8xOhdKHzbkyaWFLRHN0WjRoajg/edit
Grazie mille!
Ho controllato XAML e non c'è niente di sbagliato lì. Ho rimosso l'animazione, non ha funzionato neanche. – Shahaab
Ho aggiunto 'UpdateLayout()' sia per ScrollViewer che per ListBox, non ha aiutato. – Shahaab
Il punto è che funziona bene, la seconda volta funziona come dovrebbe, perché non funziona la prima volta? C'è qualcosa che mi manca? – Shahaab