Cette documentation est archivée et n’est pas conservée.

Control.OnContextMenuChanged, méthode

Déclenche l'événement ContextMenuChanged.

Espace de noms : System.Windows.Forms
Assembly : System.Windows.Forms (dans system.windows.forms.dll)

protected virtual void OnContextMenuChanged (
	EventArgs e
)
protected void OnContextMenuChanged (
	EventArgs e
)
protected function OnContextMenuChanged (
	e : EventArgs
)

Paramètres

e

EventArgs qui contient les données d'événement.

Le déclenchement d'un événement appelle le gestionnaire d'événements par l'intermédiaire d'un délégué. Pour plus d'informations, consultez Déclenchement d'un événement.

La méthode OnContextMenuChanged autorise également les classes dérivées à gérer l'événement sans y attacher de délégué. Cette technique est recommandée pour gérer un événement dans une classe dérivée.

Remarques à l'attention des héritiers Lors de la substitution de OnContextMenuChanged dans une classe dérivée, veillez à appeler la méthode OnContextMenuChanged de la classe de base de manière à ce que les délégués inscrits reçoivent l'événement.

L'exemple de code suivant est une méthode de déclenchement des événements qui s'exécute lorsque la valeur de la propriété Text est modifiée. La classe Control possède plusieurs méthodes basées sur le modèle de nom OnPropertyNameChanged, qui déclenchent l'événement PropertyNameChangedcorrespondant lorsque la valeur PropertyName est modifiée (PropertyName représente le nom de la propriété correspondante).

L'exemple de code suivant modifie le ForeColor d'une classe dérivée TextBox qui affiche des données de devises. L'exemple convertit le texte en nombre décimal et remplace ForeColor par Color.Red si le nombre est négatif, et par Color.Black si le nombre est positif. Cet exemple suppose qu'une classe dérive de la classe TextBox.

protected override void OnTextChanged(System.EventArgs e)
{
   try
   {
      // Convert the text to a Double and determine
      // if it is a negative number.
      if(double.Parse(this.Text) < 0)
      {
         // If the number is negative, display it in Red.
         this.ForeColor = Color.Red;
      }
      else
      {
         // If the number is not negative, display it in Black.
         this.ForeColor = Color.Black;
      }
   }
   catch
   {
      // If there is an error, display the 
      // text using the system colors.
      this.ForeColor = SystemColors.ControlText;
   }
   
   base.OnTextChanged(e);
}

protected void OnTextChanged(System.EventArgs e)
{
    try {
        // Convert the text to a Double and determine
        // if it is a negative number.
        if (System.Double.Parse(this.get_Text()) < 0) {
            // If the number is negative, display it in Red.
            this.set_ForeColor(Color.get_Red());
        }
        else {
            // If the number is not negative, display it in Black.
            this.set_ForeColor(Color.get_Black());
        }
    }
    catch (System.Exception exp) {
        // If there is an error, display the 
        // text using the system colors.
        this.set_ForeColor(SystemColors.get_ControlText());
    }
    super.OnTextChanged(e);
} //OnTextChanged

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0
Afficher: