Control.OnVisibleChanged-Methode
Löst das VisibleChanged-Ereignis aus.
Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)
Syntax
'Declaration
Protected Overridable Sub OnVisibleChanged ( _
e As EventArgs _
)
'Usage
Dim e As EventArgs
Me.OnVisibleChanged(e)
protected virtual void OnVisibleChanged (
EventArgs e
)
protected:
virtual void OnVisibleChanged (
EventArgs^ e
)
protected void OnVisibleChanged (
EventArgs e
)
protected function OnVisibleChanged (
e : EventArgs
)
Parameter
- e
Eine Instanz von EventArgs, die die Ereignisdaten enthält.
Hinweise
Durch das Auslösen eines Ereignisses wird der Ereignishandler über einen Delegaten aufgerufen. Weitere Informationen finden Sie unter Auslösen eines Ereignisses.
Die OnVisibleChanged-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 Erben Wenn Sie OnVisibleChanged in einer abgeleiteten Klasse überschreiben, müssen Sie die OnVisibleChanged-Methode der Basisklasse aufrufen, sodass registrierte Delegaten das Ereignis empfangen.
Beispiel
Im folgenden Codebeispiel wird eine Ereignisauslösermethode veranschaulicht, die beim Ändern des Text-Eigenschaftenwerts ausgeführt wird. Die Control-Klasse verfügt über mehrere Methoden mit dem Namensmuster OnPropertyNameChanged, die das entsprechende PropertyNameChanged-Ereignis auslösen, wenn sich der PropertyName-Wert ändert (PropertyName stellt den Namen der entsprechenden Eigenschaft dar).
Im folgenden Codebeispiel wird die ForeColor einer von einer TextBox abgeleiteten Klasse geändert, die Währungsdaten anzeigt. Im Beispiel wird der Text in eine Dezimalzahl umgewandelt und die ForeColor in Color.Red geändert, wenn die Zahl negativ ist, und in Color.Black, wenn die Zahl positiv ist. In diesem Beispiel ist eine Klasse erforderlich, die von der TextBox-Klasse abgeleitet ist.
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
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:
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 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
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
Control-Klasse
Control-Member
System.Windows.Forms-Namespace
VisibleChanged
Visible
Show
Hide