CurrencyManager.ItemChanged 事件

定义

在当前项更改后发生。

C#
public event System.Windows.Forms.ItemChangedEventHandler ItemChanged;
C#
public event System.Windows.Forms.ItemChangedEventHandler? ItemChanged;

事件类型

示例

下面的代码示例为 ItemChangedPositionChanged 事件添加事件处理程序。

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

注解

当用户ItemChanged调用 或 SuspendBinding 方法时,ResumeBinding将发生 该事件。

ItemChanged仅当以某种方式更改了项本身时,才会发生该事件。 例如,如果项的值从 10 更改为 42,则会发生 该事件。 这不应与 PositionChanged 项已更改为新项的事件混淆。

如果基础数据发生更改,也会发生 该事件。 例如,如果更改 的值 DataRowView,将发生 事件 ItemChanged

备注

如果要创建自己的使用 的 CurrencyManager控件,则应使用 IBindingList.ListChanged 而不是 CurrencyManager.ItemChanged 事件。 的 ListChangedType 属性 ListChangedEventArgs 可用于确定已发生的操作类型。

有关处理事件的详细信息,请参阅 处理和引发事件

适用于

产品 版本
.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

另请参阅