다음을 통해 공유


CurrencyManager.ItemChanged 이벤트

현재 항목이 변경되면 발생합니다.

네임스페이스: System.Windows.Forms
어셈블리: System.Windows.Forms(system.windows.forms.dll)

구문

‘선언
Public Event ItemChanged As ItemChangedEventHandler
‘사용 방법
Dim instance As CurrencyManager
Dim handler As ItemChangedEventHandler

AddHandler instance.ItemChanged, handler
public event ItemChangedEventHandler ItemChanged
public:
event ItemChangedEventHandler^ ItemChanged {
    void add (ItemChangedEventHandler^ value);
    void remove (ItemChangedEventHandler^ value);
}
/** @event */
public void add_ItemChanged (ItemChangedEventHandler value)

/** @event */
public void remove_ItemChanged (ItemChangedEventHandler value)
JScript에서는 이벤트를 사용할 수 있지만 새로 선언할 수는 없습니다.

설명

ItemChanged 이벤트는 ResumeBinding 또는 SuspendBinding 메서드를 호출할 때에만 발생합니다.

ItemChanged 이벤트는 항목 자체가 변경된 경우에만 발생합니다. 예를 들어, 항목 값이 10에서 42로 변경되면 이 이벤트가 발생합니다. 이 이벤트는 항목이 있던 자리에 새 항목이 배치될 경우 발생하는 PositionChanged 이벤트와는 다릅니다.

내부 데이터가 변경되는 경우에도 이벤트가 발생합니다. 예를 들어, DataRowView의 값을 변경하면 ItemChanged 이벤트가 발생합니다.

참고

CurrencyManager를 사용하는 사용자 고유의 컨트롤을 만들 경우 CurrencyManager.ItemChanged 이벤트 대신 IBindingList.ListChanged를 사용해야 합니다. ListChangedEventArgsListChangedType 속성을 사용하면 발생한 동작의 유형을 확인할 수 있습니다.

이벤트 처리에 대한 자세한 내용은 이벤트 사용을 참조하십시오.

예제

다음 코드 예제에서는 ItemChangedPositionChanged 이벤트에 대한 이벤트 처리기를 추가합니다.

Private Sub BindControl(myTable As DataTable)
    ' Bind A TextBox control to a DataTable column in a DataSet.
    textBox1.DataBindings.Add("Text", myTable, "CompanyName")
    ' Specify the CurrencyManager for the DataTable.
    myCurrencyManager = CType(Me.BindingContext(myTable, ""), CurrencyManager)
    ' Add event handlers.
    AddHandler myCurrencyManager.ItemChanged, AddressOf CurrencyManager_ItemChanged
    AddHandler myCurrencyManager.PositionChanged, AddressOf CurrencyManager_PositionChanged
    ' Set the initial Position of the control.
    myCurrencyManager.Position = 0
End Sub 'BindControl


Private Sub CurrencyManager_PositionChanged(sender As Object, e As System.EventArgs)
    Dim myCurrencyManager As CurrencyManager = CType(sender, CurrencyManager)
    Console.WriteLine(("Position Changed " & myCurrencyManager.Position))
End Sub 'CurrencyManager_PositionChanged


Private Sub CurrencyManager_ItemChanged(sender As Object, e As System.Windows.Forms.ItemChangedEventArgs)
    Dim myCurrencyManager As CurrencyManager = CType(sender, CurrencyManager)
    Console.WriteLine(("Item Changed " & myCurrencyManager.Position))
End Sub 'CurrencyManager_ItemChanged
private void BindControl(DataTable myTable)
{
    // Bind A TextBox control to a DataTable column in a DataSet.
    textBox1.DataBindings.Add("Text", myTable, "CompanyName");
    // Specify the CurrencyManager for the DataTable.
    myCurrencyManager = (CurrencyManager)this.BindingContext[myTable, ""];
    // Add event handlers.
    myCurrencyManager.ItemChanged+=
    new ItemChangedEventHandler(CurrencyManager_ItemChanged);
    myCurrencyManager.PositionChanged+= 
    new EventHandler(CurrencyManager_PositionChanged);
    // Set the initial Position of the control.
    myCurrencyManager.Position = 0;
}
 
private void CurrencyManager_PositionChanged(object sender, System.EventArgs e){
    CurrencyManager myCurrencyManager = (CurrencyManager) sender;
    Console.WriteLine("Position Changed " + myCurrencyManager.Position);
}

private void CurrencyManager_ItemChanged(object sender, System.Windows.Forms.ItemChangedEventArgs e){
    CurrencyManager myCurrencyManager = (CurrencyManager) sender;
    Console.WriteLine("Item Changed " + myCurrencyManager.Position);
}
void BindControl( DataTable^ myTable )
{
   
   // Bind A TextBox control to a DataTable column in a DataSet.
   textBox1->DataBindings->Add( "Text", myTable, "CompanyName" );
   
   // Specify the CurrencyManager for the DataTable.
   myCurrencyManager = dynamic_cast<CurrencyManager^>(this->BindingContext[myTable, ""]);
   
   // Add event handlers.
   myCurrencyManager->ItemChanged += gcnew ItemChangedEventHandler( this, &Form1::CurrencyManager_ItemChanged );
   myCurrencyManager->PositionChanged += gcnew EventHandler( this, &Form1::CurrencyManager_PositionChanged );
   
   // Set the initial Position of the control.
   myCurrencyManager->Position = 0;
}

void CurrencyManager_PositionChanged( Object^ sender, System::EventArgs^ /*e*/ )
{
   CurrencyManager^ myCurrencyManager = dynamic_cast<CurrencyManager^>(sender);
   Console::WriteLine( "Position Changed {0}", myCurrencyManager->Position );
}

void CurrencyManager_ItemChanged( Object^ sender, System::Windows::Forms::ItemChangedEventArgs^ /*e*/ )
{
   CurrencyManager^ myCurrencyManager = dynamic_cast<CurrencyManager^>(sender);
   Console::WriteLine( "Item Changed {0}", myCurrencyManager->Position );
}
private void BindControl(DataTable myTable)
{
    // Bind A TextBox control to a DataTable column in a DataSet.
    textBox1.get_DataBindings().Add("Text", myTable, "CompanyName");
    // Specify the CurrencyManager for the DataTable.
    myCurrencyManager = (CurrencyManager)(this.get_BindingContext().
        get_Item(myTable, ""));
    // Add event handlers.
    myCurrencyManager.add_ItemChanged(
        new ItemChangedEventHandler(CurrencyManager_ItemChanged));
    myCurrencyManager.add_PositionChanged(
        new EventHandler(CurrencyManager_PositionChanged));
    // Set the initial Position of the control.
    myCurrencyManager.set_Position(0);
} //BindControl

private void CurrencyManager_PositionChanged(Object sender, 
    System.EventArgs e)
{
    CurrencyManager myCurrencyManager = (CurrencyManager)(sender);
    Console.WriteLine("Position Changed " 
        + myCurrencyManager.get_Position());
} //CurrencyManager_PositionChanged

private void CurrencyManager_ItemChanged(Object sender, 
    System.Windows.Forms.ItemChangedEventArgs e)
{
    CurrencyManager myCurrencyManager = (CurrencyManager)(sender);

    Console.WriteLine("Item Changed " + myCurrencyManager.get_Position());
} //CurrencyManager_ItemChanged
private function BindControl(myTable : DataTable)
{
    // Bind A TextBox control to a DataTable column in a DataSet.
    textBox1.DataBindings.Add("Text", myTable, "CompanyName");
    // Specify the CurrencyManager for the DataTable.
    myCurrencyManager = CurrencyManager(this.BindingContext[myTable, ""]);
    // Add event handlers.
    myCurrencyManager.add_ItemChanged(CurrencyManager_ItemChanged);
    myCurrencyManager.add_PositionChanged(CurrencyManager_PositionChanged);
    // Set the initial Position of the control.
    myCurrencyManager.Position = 0;
}
 
private function CurrencyManager_PositionChanged(sender, e : System.EventArgs){
    var myCurrencyManager : CurrencyManager = CurrencyManager(sender);
    Console.WriteLine("Position Changed " + myCurrencyManager.Position);
}

private function CurrencyManager_ItemChanged(sender, e : System.Windows.Forms.ItemChangedEventArgs){
    var myCurrencyManager : CurrencyManager = CurrencyManager(sender);
    Console.WriteLine("Item Changed " + myCurrencyManager.Position);
}

플랫폼

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

CurrencyManager 클래스
CurrencyManager 멤버
System.Windows.Forms 네임스페이스
BindingManagerBase.PositionChanged 이벤트