Control.OnParentBindingContextChanged(EventArgs) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Löst das BindingContextChanged-Ereignis aus, wenn sich der BindingContext-Eigenschaftswert des Containers ändert, zu dem das Steuerelement gehört.
protected:
virtual void OnParentBindingContextChanged(EventArgs ^ e);
protected virtual void OnParentBindingContextChanged (EventArgs e);
abstract member OnParentBindingContextChanged : EventArgs -> unit
override this.OnParentBindingContextChanged : EventArgs -> unit
Protected Overridable Sub OnParentBindingContextChanged (e As EventArgs)
Parameter
Beispiele
Das folgende Codebeispiel ist eine Ereignisauslösungsmethode, die ausgeführt wird, wenn sich der Text Eigenschaftswert ändert. Die Control -Klasse verfügt über mehrere Methoden mit dem Namensmuster On
PropertyNameChanged
, die das entsprechende PropertyName-EreignisChanged
auslösen, wenn sich der PropertyName-Wert ändert (PropertyName stellt den Namen der entsprechenden Eigenschaft dar).
Das folgende Codebeispiel ändert die einer TextBox abgeleiteten Klasse, die ForeColor Währungsdaten anzeigt. Das Beispiel konvertiert den Text in eine Dezimalzahl und ändert in ForeColorColor.Red , 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.
Die OnParentBindingContextChanged -Methode ermöglicht es auch abgeleiteten Klassen, das Ereignis ohne Anfügen eines Delegaten zu behandeln. Dies ist das bevorzugte Verfahren für die Behandlung des Ereignisses in einer abgeleiteten Klasse.
Hinweise für Vererber
Wenn Sie OnParentBindingContextChanged(EventArgs) in einer abgeleiteten Klasse überschreiben, müssen Sie die OnParentBindingContextChanged(EventArgs)-Methode der Basisklasse aufrufen, damit registrierte Delegaten das Ereignis empfangen.