Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
ListView - Ripristinare la posizione della vista
venerdì 13 maggio 2005 - 11.11
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
sacsacsac
Profilo
| Newbie
44
messaggi | Data Invio:
ven 13 mag 2005 - 11:11
Ciao a tutti.
Ho una ListView che mi visualizza i dati di un archivio.
A questa ListView ho associato un contextmenu per Aggiungere, modificare o eliminare i dati dell'archivio stesso.
Immediatamente dopo un'operazione di aggiornamento dell'archivio faccio la Clear() della ListView, e poi ripopolo il controllo; il mio problema è che ogni volta si riposiziona alla prima riga della prima tabella, e dunque se modifico un dato che è alla fine della Listview (o in mezzo caso peggiore) dopo l'aggiornamento mi si posiziona all'inizio, per vedere le modifiche devo scorrere la barra e cercare a "occhio" l'item modificato (e mi perdo anche la selezione dell'item).
Ho trovato la proprietà TopItem che mi restituisce la prima riga visibile del controllo ma non riesco a ripristinarla subito dopo l'aggiornamento.
Qualcuno mi puo' essere d'aiuto?
Grazie a tutti
Ciao
AntCiar
Profilo
| Expert
936
messaggi | Data Invio:
mar 17 mag 2005 - 15:25
Anche io ho avuto il tuo stesso problema e l'ho risolto in questo modo:
premessa: io al tag dell'item della listview associo di solito la chiave della riga del db.
Prima di fare il clear, memorizzo la chiave della riga su cui sto oppure la chiave della nuova riga inserita.
Dopo il riempimento della listview, scorro tutti gli items da zero fino all'ultimo e valuto se il tag dell'elemento iesimo e uguale al tag che ho memorizzato nella variabile. se il valore è uguale allora faccio questo
listview.items(i).ensurevisible
application.doevent
in questo modo fa si che l'elemento i diventi il promo visualizzato nella lista
Se poi vuoi che venga anche evidenziato in blu (selezionato) scivi anche questo
listview.focus()
listview.item(i).selected = true
Ciao
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !