Control.OnLocationChanged(EventArgs) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Genera el evento LocationChanged.
protected:
virtual void OnLocationChanged(EventArgs ^ e);
protected virtual void OnLocationChanged (EventArgs e);
abstract member OnLocationChanged : EventArgs -> unit
override this.OnLocationChanged : EventArgs -> unit
Protected Overridable Sub OnLocationChanged (e As EventArgs)
Parámetros
Ejemplos
El ejemplo de código siguiente es un método de generación de eventos que se ejecuta cuando cambia el valor de la propiedad Text. La clase
En el ejemplo de código siguiente se cambia la ForeColor de una clase derivada TextBox que muestra los datos de moneda. En el ejemplo se convierte el texto en un número decimal y se cambia el ForeColor a Color.Red si el número es negativo y a Color.Black si el número es positivo. En este ejemplo se requiere que tenga una clase que derive de la clase TextBox.
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
Comentarios
La generación de un evento invoca el controlador de eventos a través de un delegado. Para obtener más información, vea control y generación de eventos.
El método OnLocationChanged también permite que las clases derivadas controle el evento sin adjuntar un delegado. Esta es la técnica preferida para controlar el evento en una clase derivada.
Notas a los desarrolladores de herederos
Al invalidar OnLocationChanged(EventArgs) en una clase derivada, asegúrese de llamar al método OnLocationChanged(EventArgs) de la clase base para que los delegados registrados reciban el evento.