这是最简单的场景。我有一个带有几个 TextBoxes 和一个 BindingSource 的 Form,绑定到 DataSet 实例,TextBoxes 绑定到 BindingSource。在这些文本框中输入文本不会CurrentItemChanged
在我的 BindingSource 上引发事件;即使我将焦点更改为另一个文本框。它仅在我移至另一条记录时触发,这是人们对CurrentChanged
. 根据MSDN:
引发 CurrentItemChanged 事件以响应引发 CurrentChanged 事件的所有情况。此外,只要 Current 的某个属性的值发生更改,也会触发 CurrentItemChanged。
请注意,我不想调用 EndEdit() 因为那会提交我的更改。
编辑
这是我的绑定代码。现在我也添加OnPropertyChanged
了,没有任何运气。
Me.bsCatItems.DataMember = "catalog_items"
Me.bsCatItems.DataSource = Me.DsInventory
Me.bsItems.DataSource = Me.bsCatItems
Me.bsItems.DataMember = "FK_CatalogItems_Items"
Me.TextBox1.DataBindings.Add(New System.Windows.Forms.Binding("Text", Me.bsItems, "consignment_count", True, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged))