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
Eventi tra form
lunedì 03 febbraio 2014 - 22.11
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
VB.NET
|
.NET 3.5
|
Windows 7
|
Visual Studio 2010
|
MySQL 5.0
|
Access (.mdb)
Bazzi
Profilo
| Junior Member
67
messaggi | Data Invio:
lun 3 feb 2014 - 22:11
Ciao a tutti,
chiedo un consiglio per un problemino che vorrei studiare/risolvere.
Ho un programma Vb.Net con un menù che può aprire un paio di form MDI, la Form A e la Form B.
Una delle 2 form, la Form B può aprire a sua volta un'altra Form C.
Avrei bisogno di intercettare nella Form A alcuni eventi che vengono "sparati" dalla Form C.
Mi date un consiglio su come gestire questo caso ?
Grazie a tutti.
The Bazz
0v3rCl0ck
Profilo
| Guru
1.120
messaggi | Data Invio:
lun 3 feb 2014 - 23:47
Ciao, ti consiglio di pensare ad implementare un message broker, che non è altro che una classe che viene istanziata all'avvio dell'applicazione che espone dei metodi per ricevere e spedire messaggi. Chi spedisce deve solo fare creare una classe (messaggio) e "spararlo", chi invece vuole ricevere, deve sottoscriversi ad un tipo di messaggio per rimanere in ascolto, questo lo trovo uno dei metodi migliori ed elegati, che ti permette di non accoppiare le form, garantendoti un buon livello di disaccoppiamento e riutilizzazione del codice.
qui ne trovi un esempio implementato per wpf, ma si può utilizzare tranquillamente:
https://radical.codeplex.com/wikipage?title=The%20message%20broker
https://radical.codeplex.com/wikipage?title=Message%20broker%3a%20POCO%20Messages
https://radical.codeplex.com/SourceControl/latest
ciao,
Michael Denny
Software Developer & Architect
http://blogs.dotnethell.it/Regulator/
http://dennymichael.wordpress.com
Twitter: @dennymic
Bazzi
Profilo
| Junior Member
67
messaggi | Data Invio:
mar 4 feb 2014 - 21:54
Grazie per il consiglio !
Però, scusa l'ignoranza, capisco a livello teorico cosa intendi...ma dal punto di vista pratico non ci sono...
In che modo "sparo" il messaggio da una form ed in che modo ricevo dall'altra.
Scusa ma sono un po' scarso...hai magari da indicarmi qualche esempio in VB.net ?
Ciao e grazie.
The Bazz
0v3rCl0ck
Profilo
| Guru
1.120
messaggi | Data Invio:
mar 4 feb 2014 - 21:59
Non ho niente di pronto in vb.net e in c# lo prenderei direttamente da radical o altri framework open-Source che hanno implementato quel patern di message broker
Appena riesco provo a vedere se riesco a farti un esempio base o a trovare qualcosa di già fatto
Michael Denny
Software Developer & Architect
http://blogs.dotnethell.it/Regulator/
http://dennymichael.wordpress.com
Twitter: @dennymic
Bazzi
Profilo
| Junior Member
67
messaggi | Data Invio:
mar 4 feb 2014 - 22:02
Mizze....che rapidità :-)
Saresti veramente un mito...ti devo una birra !
Grazie !
The Bazz
0v3rCl0ck
Profilo
| Guru
1.120
messaggi | Data Invio:
mer 5 feb 2014 - 14:06
ti ho preparato un esempio che utilizza direttamente il message broker implementato in radical, aggiungendo un implemetazione di un dispatcher base per le windows forms, dato che in radical sono presenti principalmente implementazioni basate su wpf, ma come puoi vedere i concetti sono talmente generici che il codice sorgente di radical, per le parti core base, non è legato alla piattaforma wpf, perchè è stato diviso molto bene in dll contenenti soluzioni ai problemi più comuni (senza legami alle dll di wpf solo al .net core), e altre dll per la gestione mirata di wpf, wp8, silverlight, ecc...
L'esempio lo trovi sul mio github, nelle CommunityResources, da dove puoi scaricare lo zip contenente tutti gli esempi pubblicati fino adesso compreso il tuo:
http://github.com/micdenny/CommunityResources
Inoltre te l'ho temporaneamente pubblicato qui:
http://we.tl/JyKY4dwffN
Se non ti è chiaro il funzionamento, posso anche costruirtene uno da zero molto base, per farti capiri i pricipi, ma non so se ne ho il tempo, per questo ti ho intanto pubblicato in esempio basato su una libreria già completa.
ciao,
Michael Denny
Software Developer & Architect
http://blogs.dotnethell.it/Regulator/
http://dennymichael.wordpress.com
Twitter: @dennymic
Bazzi
Profilo
| Junior Member
67
messaggi | Data Invio:
mer 5 feb 2014 - 19:46
Come già detto...sei un mito !
Grazie davvero per le dritte. Ora devo mettermi a studiare ! :-)
In effetti, quello che mi interessa, è capire il funzionamento...quando avrai tempo (e voglia) magari mi piacerebbe approfondire con un esempio da zero.
Intanto studio ed accetto la tua risposta !
Se ho dubbi, ti romperò ancora le scatole :-)
Ti ringrazio!
The Bazz
0v3rCl0ck
Profilo
| Guru
1.120
messaggi | Data Invio:
gio 6 feb 2014 - 00:15
>Come già detto...sei un mito !
ma va la...non esageriamo
>Grazie davvero per le dritte. Ora devo mettermi a studiare !
>:-)
>
>In effetti, quello che mi interessa, è capire il funzionamento...quando
>avrai tempo (e voglia) magari mi piacerebbe approfondire con
>un esempio da zero.
>Intanto studio ed accetto la tua risposta !
volentieri, mi fa bene anche a me, ripasso un po' di cose
>
>Se ho dubbi, ti romperò ancora le scatole :-)
>
>Ti ringrazio!
>The Bazz
figurati, alla prossima
Michael Denny
Software Developer & Architect
http://blogs.dotnethell.it/Regulator/
http://dennymichael.wordpress.com
Twitter: @dennymic
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 !