Come posso (nel form padre) intercettare gli eventi di una DataGridView che fa parte di un mio UserControl?
Grazie
Come posso (nel form padre) intercettare gli eventi di una DataGridView che fa parte di un mio UserControl?
Grazie
se incapsuli una logica dentro un uc vuol dire che a chi utilizza l'uc non importa cosa succede ai controlli interni. Al padre molto probabilmente non interessa sapere del datagw dentro ma dell'uc, si ok di fatto si traduce nel sapere del datagw ma la puntualizzazione è propedeutica per la risposta: crei un evento personalizzato a livello di uc che lanci allo scatenarsi dell'evento interno.
Questo è il modo giusto... se invece cerchi un modo veloce, pratico ma (imho) meno oop basta esporre nella classe dell'uc l'oggetto datagw come proprietà publbica e da li accedi a tutte le sue proprietà ed eventi, in questo modo tra le altre cose puoi sottoscrivere un gestore dal padre direttamente all'evento del datagw.
Grazie mille...potresti spiegarmi meglio dove dici 'in questo modo tra le altre cose puoi sottoscrivere un gestore dal padre direttamente all'evento del datagw'?Originariamente inviato da rsdpzed
... se invece cerchi un modo veloce, pratico ma (imho) meno oop basta esporre nella classe dell'uc l'oggetto datagw come proprietà publbica e da li accedi a tutte le sue proprietà ed eventi, in questo modo tra le altre cose puoi sottoscrivere un gestore dal padre direttamente all'evento del datagw.
nella classe dell'uc scrivi una proprietà piu o meno:
nel padre...codice:public DataGridView InnerGridview { get { return this.DataGridView1; } }
e definisci sempre nel padre l'handlercodice:uc.InnerGridView.Click += handlerDelClick;
codice://in base al tipo di evento la firma cambia e l'eventArgs potrebbe essere un tipo derivato piu specializzato... questo è quello di base protected void handlerDelClick(object sender, EventArgs e) { //gestisci l'evento come fai di solito... }
grazie 1000