Aracılığıyla paylaş


Control.OnLocationChanged(EventArgs) Yöntem

Tanım

LocationChanged olayını başlatır.

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)

Parametreler

e
EventArgs

Olay verilerini içeren bir EventArgs.

Örnekler

Aşağıdaki kod örneği, Text özellik değeri değiştiğinde yürütülen bir olay oluşturma yöntemidir. sınıfı, PropertyName değeri değiştiğinde (PropertyName ilgili özelliğin adını temsil ettiğinde) ilgili PropertyName olayını tetikleyen PropertyName ad deseni olan çeşitli yöntemlere sahiptir.

Aşağıdaki kod örneği, para birimi verilerini görüntüleyen TextBox türetilmiş bir sınıfın ForeColor değiştirir. Örnek, metni ondalık sayıya dönüştürür ve ForeColor negatifse Color.Red olarak ve sayı pozitifse Color.Black olarak değiştirir. Bu örnek, TextBox sınıfından türetilen bir sınıfınız olmasını gerektirir.

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

Açıklamalar

Olay oluşturmak, bir temsilci aracılığıyla olay işleyicisini çağırır. Daha fazla bilgi için bkz. olayları işleme ve oluşturma.

OnLocationChanged yöntemi, türetilmiş sınıfların temsilci eklemeden olayı işlemesine de olanak tanır. Bu, türetilmiş bir sınıfta olayı işlemek için tercih edilen tekniktir.

Devralanlara Notlar

Türetilmiş bir sınıftaki OnLocationChanged(EventArgs) geçersiz kıldığınızda, kayıtlı temsilcilerin olayı alması için temel sınıfın OnLocationChanged(EventArgs) yöntemini çağırdığınızdan emin olun.

Şunlara uygulanır

Ayrıca bkz.