J'ai suivi quelques tutoriels sur la façon de créer des accesseurs d'événement custem. Voici le code que j'ai:C# Pourquoi ma déclaration de verrouillage est-elle suspendue?
event ControlNameChangeHandler IProcessBlock.OnControlNameChanged
{
add
{
lock (ControlNameChanged)
{
ControlNameChanged += value;
}
}
remove
{
lock (ControlNameChanged)
{
ControlNameChanged -= value;
}
}
}
Au moment le code atteint lock(ControlNameChanged)
dans le statament add, rien ne se passe. Le code ne fonctionne plus. Cependant, mon application fonctionne toujours. Il ne gèle pas ou quelque chose.
Qu'est-ce qui ne va pas?
changer le gestionnaire pendant l'exécution du gestionnaire est une très mauvaise idée! –
Comment voulez-vous dire? Désolé, je suis nouveau à cela. – Martijn
@Mitch: ressemble plus à une référence à un délégué ou à un autre événement sur le même objet, puisqu'il s'agit d'une implémentation d'interface explicite. – Lucero