Je vias te faire un petit tuto vitte fait pour les event
Dabord il faut faire un class qui va contenire les argument de ton evenement (par example dans button_click on a en argument (sender as object et e as xxxEventArg) donc il nous faut crer cette class eventargs comme ceci je ne détail pas c'est trés simple
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Drawing;
namespace WindowsFormsApplication1
{
class AccomptLogEventArgs : System.EventArgs
{
private string _text;
private Color _col;
public string Text
{
get
{
return _text;
}
}
public Color Col
{
get
{
return _col;
}
}
public AccomptLogEventArgs(string text_ ,Color col_)
{
_text = text_;
_col = col_;
}
}
}
voila ensuite dans la class qui va générer l'evenement tu doit le déclarer comme ceci
public event EventHandler<AccomptLogEventArgs> OnLog;
entre les "<" , ">" tu met le non de ta class eventArgs
pour générer l'evenement tu doit faire une petite fonction par example
private void Log(string text, Color clr)
{
if (OnLog != null)
OnLog(this, new AccomptLogEventArgs(text, clr));
}
et enfin pour que tu puisse recevoire l'evenement tu fait sa depuis la class qui recoit
creator.OnLog += creator_OnLog;
je ne détaile pas tu doit connaitre sa commem
ps. je fait ce tuto en suposant que tu c'est déja utiliser les événement car dans le cas contraire va faire un tours sur le site du zero
et juste au cas ou pour utiliser un control depuis une autre thread tu fait comme sa
this.BeginInvoke((MethodInvoker)delegate()
{
Les actions sur le control a modifier ici
});
ps. désoler pour les faute j'ais écrit sa vitte fait