Lanciare una funzione presente in un form che non è nello stato attivo...

mercoledì 20 ottobre 2010 - 10.58

maui.80 Profilo | Junior Member

Ciao a tutti ragazzi, premetto che sto maneggiando da poco windows form quindi abbiate pazienza.

Mi trovo in una form chiamata Piastra, lancio l'apertura di un form di modifica di un dato.
Al salvataggio dello stesso chiudo il form con l'istruzione me.close() e nel form piastra dovrei lanciare una funzione (che fa il refresh di un datagrid).

La soluzione migliore da adottare secondo voi?

grazie dell'aiuto

Ciao MAURO

luigidibiasi Profilo | Guru

>Ciao a tutti ragazzi, premetto che sto maneggiando da poco windows
>form quindi abbiate pazienza.
>
>Mi trovo in una form chiamata Piastra, lancio l'apertura di un
>form di modifica di un dato.
>Al salvataggio dello stesso chiudo il form con l'istruzione me.close()
>e nel form piastra dovrei lanciare una funzione (che fa il refresh
>di un datagrid).
>
>La soluzione migliore da adottare secondo voi?
Due soluzioni in genere:

- aprire la form di modifica stato con una showDialog in modo che la form precedente si blocchi. Quando chiuderai con me.close ritornerai all'istruzione successiva a showdialog

- gestire le chiamate tra i form tramite MethodInvoker... (prima di descrivere questa soluzione prova la precedente e vedi se ti va bene)

>
>grazie dell'aiuto
>
>Ciao MAURO

Luigi Di Biasi


http://www.dibiasi.it/
http://netsell.dibiasi.it - ecomm software -
http://blogs.dotnethell.it/luigidibiasi/

AntCiar Profilo | Expert

ciao.

Apri la seconda form in ShowDialog controllando l'eventuale valore di ritorno


dim res as DialogResult = Form2.ShowDialog()
es: if res = DialogResult.Ok Then
......

else if res = DialogResult.Cancel Then
........
end if


Poi nella tua seconda form non fare il Me.Close ma utilizza il Me.DialogResult = DialogResult.X (al posto della X utilizzi uno dei valori di dialogResult)

In questo modo nella tua Form2 puoi restituire vari DialogResult a seconda del comportamento che vuoi che si deve avere nella Form1

ciao
Cristian Barca

maui.80 Profilo | Junior Member

ok provo la prima e ti faccio sapere

grazie mille

maui.80 Profilo | Junior Member

Ottima la prima soluzione con ShowDialog() ed ottimo anche il consiglio di recuperare un valore di Dialogo non usando il close ma con DialogResult.

grazie mille come sempre

ciao
MAURO
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