Posizionamento indice su datagrid dopo refresh

venerdì 17 giugno 2011 - 16.42

micromddog Profilo | Newbie

Salve,
mi trovo difronte un piccolo problema.
Ho una datagrid popolata da sql uso dataset e dataadapter tutto ok. ho la necessità di fare un refresh e ripopolare la griglia con eventuali nuovi dati dunque ho creato un timer all'evento load del form imposto il tempo al timer abilito il timer. superati x secondi cancello il dataset, cancello la datagrid e richiamo la funzione di ripopolazione della griglia (in quanto ho creato manulmente tutte le colonne). ovviamente dopo il refresh dovrei riposizionare l'indice dove è stato lasciato prima del refresh. Ho pensato che la cosa piu' semplice è quella di crearmi una variabile dove viene scritto lindice e dopo il refresh, ripopolato la griglia, ripassare la variabile con l'indice alla datagrid. Sfortunatamente mi dice che index è di sola lettura... come dovrei fare?
codice:
dim indicerigadatagrid as integer
IndiceRigaDatagrid = DataGridView1.Rows(e.RowIndex).Index
il contrario e cioè:
datagridview1.rows(e.rowindex).index = indicerigadatagrid (qui mi da l'errore dicendomi che è di sola lettura)
dove sbaglio??
Grazie Anticipatamente
Micro

whiteflash Profilo | Junior Member

hai provato con

DataGridView1.Rows(indicerigadatagrid).Selected=True

---------------------------------------------
Newbie esperto VB.NET 2010 e WPF

micromddog Profilo | Newbie

si ho provato funziona ma seleziona l'intera riga dove si trova l'indice e nn va bene(mi servirebbe che seleziona solo la colonna(nel mio caso colonna pulsante)). sto provando a gestire tutto con gli eventi della datagrid e l'evento click mi funziona riesco a farlo posizionare sulla riga che mi interessa. adesso vorrei da un pulsante esterno alla datagridview scatenare l'evento click, ma saresti così gentile da spiegare come passare i parametri all'evento. provo ad essere pochino piu' chiaro. ho un button1 e nel suo evento click tra le varie operazioni e controlli vorrei nuovamente scatenare l'evento click della datagridview in modo tale da memorizzare l'indice nella variabile e riposizionarlo nell'evento timer, in pratica vorrei creare una specie di ricorsione, poichè non riesco ad uscirne fuori.
essendo l'evento datagridview1_cellclick una sub ho pensato di poterla richiamare come qualsiasi sub, ma vuole giustamente dei parametri sia per sender che per e, e non so dove sbaglio.
Grazie mille
Micro

whiteflash Profilo | Junior Member

di solito se devo richiamare una sub io faccio

datagridview1_cellclick(controllo,Nothing)

su controllo dipende cosa ci vuoi mettere, puoi mettere il tuo button1

---------------------------------------------
Newbie esperto VB.NET 2010 e WPF

micromddog Profilo | Newbie

io ho provato da un pulsante ma mi dice "Riferimento a un oggetto non impostato su un'istanza di oggetto."

in pratica nel pulsante metto:
datagridview1_cellclick(button1,nothing)
non appena mando in esecuzione e presso il pulsante da l'errore che ho riportato sopra.
non so come devo fare...

Grazie

whiteflash Profilo | Junior Member

prova così

datagridview1_cellclick(Me,nothing)
---------------------------------------------
Newbie esperto VB.NET 2010 e WPF
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5