 |
 |
|
Événements dans C#. Filet :
|
|
L'utilité de délégué ne se situe pas simplement dans le fait qu'elle peut tenir les références aux fonctions mais dans le fait qu'il peut définir et employer les noms de fonction au temps d'exécution et pas à compilent le temps. Un grand but des délégués de conception est leur applicabilité dans le modèle d'événements de. Filet. Les événements sont les actions du système sur les manipulations d'utilisateur (par exemple clics de souris, la pression principale, le chronométreur etc.) ou de n'importe quel événement déclenché par le programme. Pour comprendre l'utilisation des délégués pour le modèle d'événement, les exemples précédents sont employés ici. Nous devrions ajouter à notre figure prochaines choses de classe :
|
public delegate void FigureHandler(string msg);
public static event FigureHandler Inverted;
public void InvertZ()
{
m_zPos = - m_zPos;
Inverted("inverted by z-axis");
}
|
|
|
Maintenant nous avons un délégué avoué et l'événement qui emploie le type de ce délégué. Dans chaque fonction nous devrions appeler notre événement. Le prochain extrait de code devrait l'expliquer clairement
|
static void Main(string[] args)
{
Figure figure = new Figure(10,20,30);
Figure.Inverted+=new Test.Figure.FigureHandler(OnFigureInverted);
figure.InvertX();
figure.InvertZ();
}
private static void OnFigureInverted(string msg)
{
Console.WriteLine("Figure was {0}",msg);
}
|
|
|
Ainsi, dans la fonction principale nous devrions créer un objet de figure classe et attacher le traiteur d'événement à la méthode OnFigureInverted. Et quand nous appelons n'importe laquelle de méthodes inverties que l'événement est mis le feu et il appelle notre traiteur d'événement. L'application imprimera la corde suivante dans la console : La figure a été inversée par la figure d'axe des abscisses a été inversée par z-axe.
|
 |
 |
Keywords Events in C# .Net, c# tutorials, c# properties, c# property, c# controls, c# library,
c# samples, treeview c#, c# thread, c# dataset, c# datagrid, listview c#, c# combobox,
c# listbox, c# table, c# xml, c# component, c# forms, c# database
|