Control.OnParentVisibleChanged(EventArgs) Método

Definición

Provoca el evento VisibleChanged cuando cambia el valor de la propiedad Visible del contenedor del control.

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

Parámetros

e
EventArgs

Objeto EventArgs que contiene los datos del evento.

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 Text propiedad. La Control clase tiene varios métodos con el patrón On de nombre PropertyNameChanged que genera el evento PropertyNameChanged correspondiente cuando cambia el valor PropertyName (PropertyName representa el nombre de la propiedad correspondiente).

En el ejemplo de código siguiente se cambia el ForeColor de una TextBox clase derivada que muestra los datos de moneda. En el ejemplo se convierte el texto en un número decimal y se cambia a ForeColorColor.Red si el número es negativo y a Color.Black si el número es positivo. Este ejemplo requiere que tenga una clase que derive de la TextBox clase .

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

Cuando se genera un evento, se invoca el controlador de eventos a través de un delegado. Para obtener más información, consulte controlar y provocar eventos.

El OnParentVisibleChanged método también permite que las clases derivadas controle el evento sin adjuntar un delegado. Ésta es la técnica preferida para controlar el evento en una clase derivada.

Notas a los desarrolladores de herederos

Al reemplazar OnParentVisibleChanged(EventArgs) en una clase derivada, asegúrese de llamar al método OnParentVisibleChanged(EventArgs) de la clase base para que los delegados registrados reciban el evento.

Se aplica a

Consulte también