Teilen über


Control.OnBackgroundImageChanged(EventArgs) Methode

Definition

Löst das BackgroundImageChanged-Ereignis aus.

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

Parameter

e
EventArgs

Ein EventArgs, das die Ereignisdaten enthält.

Beispiele

Das folgende Codebeispiel ist eine Ereignisaufhebungsmethode, die ausgeführt wird, wenn sich der Text Eigenschaftswert ändert. Die Control -Klasse verfügt über mehrere Methoden mit dem Namensmuster OnPropertyNameChanged , die das entsprechende PropertyName-EreignisChanged auslösen, wenn sich der PropertyName-Wert ändert (PropertyName steht für den Namen der entsprechenden Eigenschaft).

Im folgenden Codebeispiel wird der ForeColor einer TextBox abgeleiteten Klasse geändert, die Währungsdaten anzeigt. Im Beispiel wird der Text in eine Dezimalzahl konvertiert und in ForeColorColor.Red geändert, wenn die Zahl negativ ist, und in Color.Black , wenn die Zahl positiv ist. Dieses Beispiel erfordert, dass Sie über eine Klasse verfügen, die von der TextBox -Klasse abgeleitet ist.

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

Hinweise

Durch das Auslösen eines Ereignisses wird der Ereignishandler über einen Delegaten aufgerufen. Weitere Informationen finden Sie unter Behandeln und Auslösen von Ereignissen.

Mit der OnBackgroundImageChanged-Methode können auch abgeleitete Klassen das Ereignis ohne Anfügen eines Delegaten behandeln. Dies ist das bevorzugte Verfahren für die Behandlung des Ereignisses in einer abgeleiteten Klasse.

Hinweise für Vererber

Wenn Sie OnBackgroundImageChanged(EventArgs) in einer abgeleiteten Klasse überschreiben, müssen Sie die OnBackgroundImageChanged(EventArgs)-Methode der Basisklasse aufrufen, damit registrierte Delegaten das Ereignis empfangen.

Gilt für:

Weitere Informationen