Control.OnParentForeColorChanged(EventArgs) Control.OnParentForeColorChanged(EventArgs) Control.OnParentForeColorChanged(EventArgs) Control.OnParentForeColorChanged(EventArgs) Method

Definizione

Genera l'evento ForeColorChanged quando il valore della proprietà ForeColor del contenitore del controllo cambia.Raises the ForeColorChanged event when the ForeColor property value of the control's container changes.

protected:
 virtual void OnParentForeColorChanged(EventArgs ^ e);
protected virtual void OnParentForeColorChanged (EventArgs e);
abstract member OnParentForeColorChanged : EventArgs -> unit
override this.OnParentForeColorChanged : EventArgs -> unit
Protected Overridable Sub OnParentForeColorChanged (e As EventArgs)

Parametri

e
EventArgs EventArgs EventArgs EventArgs

Oggetto EventArgs che contiene i dati dell'evento.An EventArgs that contains the event data.

Esempi

L'esempio di codice seguente è un metodo di generazione di eventi che viene eseguito Text quando il valore della proprietà viene modificato.The following code example is an event-raising method that is executed when the Text property value changes. La Control classe dispone di diversi metodi con il nome Ondel modello PropertyName Changed che generano l'evento PropertyName Changed corrispondente quando viene modificato il valore di PropertyName ( PropertyName rappresenta il nome della proprietà corrispondente.The Control class has several methods with the name pattern OnPropertyNameChanged that raise the corresponding PropertyNameChanged event when the PropertyName value changes (PropertyName represents the name of the corresponding property).

Nell'esempio di codice seguente viene ForeColor modificato l' TextBox oggetto di una classe derivata che Visualizza i dati di valuta.The following code example changes the ForeColor of a TextBox derived class displaying currency data. Nell'esempio il testo viene convertito in un numero decimale ForeColor e Color.Red viene modificato in se il Color.Black numero è negativo e se il numero è positivo.The example converts the text to a decimal number and changes the ForeColor to Color.Red if the number is negative and to Color.Black if the number is positive. Questo esempio richiede la presenza di una classe che deriva dalla TextBox classe.This example requires that you have a class that derives from the TextBox class.

protected:
   virtual void OnTextChanged( System::EventArgs^ e ) override
   {
      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 ( Exception^ ) 
      {
         // If there is an error, display the
         // text using the system colors.
         this->ForeColor = SystemColors::ControlText;
      }

      TextBox::OnTextChanged( e );
   }
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 Overrides Sub OnTextChanged(e As System.EventArgs)
   Try
      ' Convert the text to a Double and determine
      ' if it is a negative number.
      If Double.Parse(Me.Text) < 0 Then
         ' If the number is negative, display it in Red.
         Me.ForeColor = Color.Red
      Else
         ' If the number is not negative, display it in Black.
         Me.ForeColor = Color.Black
      End If
   Catch
      ' If there is an error, display the
      ' text using the system colors.
      Me.ForeColor = SystemColors.ControlText
   End Try

   MyBase.OnTextChanged(e)
End Sub

Commenti

Quando viene generato un evento, il gestore dell'evento viene richiamato tramite un delegato.Raising an event invokes the event handler through a delegate. Per altre informazioni, vedere la gestione e generazione di eventi.For more information, see Handling and Raising Events.

Il OnParentForeColorChanged metodo consente inoltre alle classi derivate di gestire l'evento senza allegare un delegato.The OnParentForeColorChanged method also enables derived classes to handle the event without attaching a delegate. È la tecnica consigliata per la gestione dell'evento in una classe derivata.This is the preferred technique for handling the event in a derived class.

Note per gli eredi

Quando si esegue l'override di OnParentForeColorChanged(EventArgs) in una classe derivata, verificare di chiamare il metodo OnParentForeColorChanged(EventArgs) della classe di base in modo che i delegati registrati ricevano l'evento.When overriding OnParentForeColorChanged(EventArgs) in a derived class, be sure to call the base class's OnParentForeColorChanged(EventArgs) method so that registered delegates receive the event.

Si applica a

Vedi anche