Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Eventi su usercontrol non funzionano...
Forum - C# / VB.NET - [VB.NET] Eventi su usercontrol non funzionano...

Avatar
Il_maca (Ex-Member)
Pro


Messaggi: 163
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 14:25
Domenica, 27/12/2009
come da oggetto, gli eventi su un user control che ho creato non funzionano..., ho creato un user control che in sostanza è una picturebox con in aggiunta due proprietà per il mouseover e il mouse press...e quindi per la creazione di un pulsante a tre stadi... funziona tutto correttamente tranne per il fatto che dopo aver importato la dll in un progetto, gli eventi sul controllo (mouse clicked eccetera)non funzionano...
perkè??


Il computer non è una macchina inteligente nelle mani di gente stupida; ma è una macchina stupida nelle mani di gente intelligente (o almeno si spera).
PM Quote
Avatar
Il_maca (Ex-Member)
Pro


Messaggi: 163
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 8:37
Lunedì, 28/12/2009
aaaaaaaaaaaaaaaaaaaaaa :cheer: :rofl: :rofl: ora ho capito, finalmente, il vero problema.... in pratica, il controllo era composto di un'unica picturebox, che lo copriva completamente, e allora quando cliccavo sul controllo, in realtà cliccavo sulla picture del controllo, e non sul controllo stesso....e quindi tutti gli eventi associati al mouse non partivano....adesso non mi resta che ricreare tutti gli eventi del mouse, associati però alla picture.
però mi è venuto in mente un dubbio, io per creare il controllo, ho prima creato una libreria di classi, poi creato un user control e poi sul quadrato del controllo di base, ci ho messo la picture; non c'è un modo per rendere il controllo stesso una picture??


Il computer non è una macchina inteligente nelle mani di gente stupida; ma è una macchina stupida nelle mani di gente intelligente (o almeno si spera).
PM Quote
Avatar
Il_maca (Ex-Member)
Pro


Messaggi: 163
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 9:24
Lunedì, 28/12/2009
ah, qualcuno sa come si possono aggiungere gli eventi sulla picture???


Il computer non è una macchina inteligente nelle mani di gente stupida; ma è una macchina stupida nelle mani di gente intelligente (o almeno si spera).
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 10:12
Lunedì, 28/12/2009
Il controllo di per sé gode della proprietà BackgroundImage, quindi puoi anche togliere la PictureBox. In questo modo non dovrai aggiungere eventi ad esssa, ma al nuovo controllo. Infatti tu stai scrivendo un controllo utente, ossia personalizzato: è quello che devi modificare, non i controlli già esistenti che ne fanno parte.
Per aggiungere un evento, basta dichiararlo:
Codice sorgente - presumibilmente C# / VB.NET

  1. Public Event Something As EventHandler


EventHandler è il delegate che definisce il tipo dell'evento. Per generarlo, si fa esattamente come con tutti gli altri eventi:
Codice sorgente - presumibilmente C# / VB.NET

  1. RaiseEvent Something(sender, e)



"Infelici sono quelli che hanno tanto cervello da vedere la loro stupidità."
(Fligende Blatter)

"Dubitare di se stessi è il primo segno d'intelligenza."
(Ugo Ojetti)
PM Quote
Avatar
Il_maca (Ex-Member)
Pro


Messaggi: 163
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 12:17
Lunedì, 28/12/2009
Testo quotato

Postato originariamente da Il Totem:

Il controllo di per sé gode della proprietà BackgroundImage, quindi puoi anche togliere la PictureBox. In questo modo non dovrai aggiungere eventi ad esssa, ma al nuovo controllo.


:-| non ci avevo pensato... :k:

Testo quotato


Infatti tu stai scrivendo un controllo utente, ossia personalizzato: è quello che devi modificare, non i controlli già esistenti che ne fanno parte.
Per aggiungere un evento, basta dichiararlo:
Codice sorgente - presumibilmente C# / VB.NET

  1. Public Event Something As EventHandler


EventHandler è il delegate che definisce il tipo dell'evento. Per generarlo, si fa esattamente come con tutti gli altri eventi:
Codice sorgente - presumibilmente C# / VB.NET

  1. RaiseEvent Something(sender, e)



perfetto ci provo subito, grazie mille... :k::k:



Il computer non è una macchina inteligente nelle mani di gente stupida; ma è una macchina stupida nelle mani di gente intelligente (o almeno si spera).
PM Quote
Avatar
Il_maca (Ex-Member)
Pro


Messaggi: 163
Iscritto: 28/01/2009

Segnala al moderatore
Postato alle 12:41
Lunedì, 28/12/2009
non ti sconvolgerà l'idea che funziona tutto!! :k::rofl:
grazie mille davvero, hai risolto un problema che mi tormentava e grazie a te ho capito alcune cose che non sono riuscito a reperire in internet... grazieeeeeee:hail: :hail: :cheer:


Il computer non è una macchina inteligente nelle mani di gente stupida; ma è una macchina stupida nelle mani di gente intelligente (o almeno si spera).
PM Quote