ScrollBar.OnValueChanged(EventArgs) ScrollBar.OnValueChanged(EventArgs) ScrollBar.OnValueChanged(EventArgs) ScrollBar.OnValueChanged(EventArgs) Method

定義

ValueChanged イベントを発生させます。Raises the ValueChanged event.

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

パラメーター

e
EventArgs EventArgs EventArgs EventArgs

イベント データを格納している EventArgsAn EventArgs that contains the event data.

次のコード例は、派生クラスを使用してVScrollBarします。The following code example uses the derived class VScrollBar. イベント ハンドラー、ScrollValueChangedイベントが作成されます。Event handlers for the Scroll and ValueChanged events are created. このコードを前提としていますが、LabelButtonフォームで作成されたボタンのイベント ハンドラーがあることと、Clickイベント。This code assumes that a Label and Button have been created on a form and that the button has an event handler for the Click event. ボタンがクリックされたときに、Valueコードで、スクロール バーのプロパティを調整します。When the button is clicked, the Value property of the scroll bar is adjusted in code. 現在の値をラベルに表示されます、Valueプロパティとイベントを変更します。The label will display the current value of the Value property and the event that changed it. 表示になります ボタンのスクロールの値が変更されたときにClickイベントにのみ、ValueChangedイベントが発生します。You will notice that when the scroll value is changed by the button's Click event, only the ValueChanged event is raised. これに対し、ときに、スクロール バーが手動でスクロール、Scrollイベントが発生した直後に、ValueChangedイベント。In contrast, when the scroll bar is scrolled manually, the Scroll event is raised immediately after the ValueChanged event.

注意

Visual Studio でこの例を実行する方法については、次を参照してください。方法。Visual Studio を使用して、完全な Windows フォームのコードの例をコンパイルしてします。For instructions about how to run this example in Visual Studio, see How to: Compile and Run a Complete Windows Forms Code Example Using Visual Studio.

void AddMyScrollEventHandlers()
{
   // Create and initialize a VScrollBar.
   VScrollBar^ vScrollBar1 = gcnew VScrollBar;

   // Add event handlers for the OnScroll and OnValueChanged events.
   vScrollBar1->Scroll += gcnew ScrollEventHandler( this, &Form1::vScrollBar1_Scroll );
   vScrollBar1->ValueChanged += gcnew EventHandler( this, &Form1::vScrollBar1_ValueChanged );
}

// Create the ValueChanged event handler.
void vScrollBar1_ValueChanged( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   // Display the new value in the label.
   label1->Text = String::Format( "vScrollBar Value:(OnValueChanged Event) {0}", vScrollBar1->Value );
}

// Create the Scroll event handler.
void vScrollBar1_Scroll( Object^ /*sender*/, ScrollEventArgs^ e )
{
   // Display the new value in the label.
   label1->Text = String::Format( "VScrollBar Value:(OnScroll Event) {0}", e->NewValue );
}

void button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   // Add 40 to the Value property if it will not exceed the Maximum value.
   if ( vScrollBar1->Value + 40 < vScrollBar1->Maximum )
   {
      vScrollBar1->Value = vScrollBar1->Value + 40;
   }
}
private void AddMyScrollEventHandlers()
 {
    // Create and initialize a VScrollBar.
    VScrollBar vScrollBar1 = new VScrollBar();
 
    // Add event handlers for the OnScroll and OnValueChanged events.
    vScrollBar1.Scroll += new ScrollEventHandler(
       this.vScrollBar1_Scroll);
    vScrollBar1.ValueChanged += new EventHandler(
       this.vScrollBar1_ValueChanged); 
 }
 
 // Create the ValueChanged event handler.
 private void vScrollBar1_ValueChanged(Object sender, 
                                       EventArgs e)
 {
     // Display the new value in the label.
     label1.Text = "vScrollBar Value:(OnValueChanged Event) " + vScrollBar1.Value.ToString();
 }
 
 // Create the Scroll event handler.
 private void vScrollBar1_Scroll(Object sender, 
                                 ScrollEventArgs e)
 {
     // Display the new value in the label.
     label1.Text = "VScrollBar Value:(OnScroll Event) " + e.NewValue.ToString();
 }
 
 private void button1_Click(Object sender, 
                           EventArgs e)
 {
    // Add 40 to the Value property if it will not exceed the Maximum value.
    if (vScrollBar1.Value + 40 < vScrollBar1.Maximum)
    {
        vScrollBar1.Value = vScrollBar1.Value + 40;
    }
 }
 
Private Sub AddMyScrollEventHandlers()
    ' Create and initialize a VScrollBar.
    Dim vScrollBar1 As New VScrollBar()
    
    ' Add event handlers for the OnScroll and OnValueChanged events.
    AddHandler vScrollBar1.Scroll, AddressOf Me.vScrollBar1_Scroll
    AddHandler vScrollBar1.ValueChanged, AddressOf Me.vScrollBar1_ValueChanged
End Sub    

' Create the ValueChanged event handler.
Private Sub vScrollBar1_ValueChanged(sender As Object, e As EventArgs)
    ' Display the new value in the label.
    label1.Text = "vScrollBar Value:(OnValueChanged Event) " & _
        vScrollBar1.Value.ToString()
End Sub    

' Create the Scroll event handler.
Private Sub vScrollBar1_Scroll(sender As Object, e As ScrollEventArgs)
    ' Display the new value in the label.
    label1.Text = "VScrollBar Value:(OnScroll Event) " & _
        e.NewValue.ToString()
End Sub    

Private Sub button1_Click(sender As Object, e As EventArgs)
    ' Add 40 to the Value property if it will not exceed the Maximum value.
    If vScrollBar1.Value + 40 < vScrollBar1.Maximum Then
        vScrollBar1.Value = vScrollBar1.Value + 40
    End If
End Sub

注釈

イベントを発生させると、イベント ハンドラーがデリゲートから呼び出されます。Raising an event invokes the event handler through a delegate. 詳細については、次を参照してください。処理とイベントの発生します。For more information, see Handling and Raising Events.

OnValueChanged メソッドを使用すると、デリゲートを結び付けずに、派生クラスでイベントを処理することもできます。The OnValueChanged method also allows derived classes to handle the event without attaching a delegate. 派生クラスでイベントを処理する場合は、この手法をお勧めします。This is the preferred technique for handling the event in a derived class.

注意 (継承者)

オーバーライドするときにOnValueChanged(EventArgs)、派生クラスで基底クラスを呼び出すことを確認するOnValueChanged(EventArgs)デリゲートを登録するためのメソッドがイベントを受信します。When overriding OnValueChanged(EventArgs) in a derived class, be sure to call the base class' OnValueChanged(EventArgs) method so that registered delegates receive the event.

適用対象

こちらもご覧ください