Control.OnLocationChanged(EventArgs) メソッド

定義

LocationChanged イベントを発生させます。

C#
protected virtual void OnLocationChanged(EventArgs e);

パラメーター

e
EventArgs

イベント データを含む EventArgs

次のコード例は、Text プロパティ値が変更されたときに実行されるイベント発生メソッドです。 クラスには、PropertyName 値が変更されたときに対応する PropertyName イベントを発生させる PropertyName 名前パターンを持つメソッドがいくつかあります (PropertyName は、対応するプロパティの名前を表します)。

次のコード例では、通貨データを表示する TextBox 派生クラスの ForeColor を変更します。 この例では、テキストを 10 進数に変換し、数値が負の場合は Color.Red に、数値が正の場合は Color.BlackForeColor を変更します。 この例では、TextBox クラスから派生するクラスが必要です。

C#
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);
}

注釈

イベントを発生させると、デリゲートを介してイベント ハンドラーが呼び出されます。 詳細については、「イベントの処理と発生」を参照してください。

OnLocationChanged メソッドを使用すると、デリゲートをアタッチせずに、派生クラスでイベントを処理することもできます。 これは、派生クラスでイベントを処理するために推奨される手法です。

注意 (継承者)

派生クラスで OnLocationChanged(EventArgs) をオーバーライドする場合は、登録されているデリゲートがイベントを受け取るように、基底クラスの OnLocationChanged(EventArgs) メソッドを必ず呼び出してください。

適用対象

製品 バージョン
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

こちらもご覧ください