通过 a 添加新项目时BindingNavigator
,如何使用先前选择的项目的值填充新项目的多个字段?
注意:在 上BindingNavigatorAddNewItem.Click
,BindingNavigator
已加载新项目并将控件清除为默认值。
通过 a 添加新项目时BindingNavigator
,如何使用先前选择的项目的值填充新项目的多个字段?
注意:在 上BindingNavigatorAddNewItem.Click
,BindingNavigator
已加载新项目并将控件清除为默认值。
BindingNavigator
必须绑定到数据源。例如,要让它与 a 共享相同的内容DataGridView
,它需要使用 a BindingSource
。因此,添加的项目实际上已添加到您的基础BindingSource.DataSource
.
我可以看到有两种方法可以解决您的问题。
一旦DataGridView
和BindingNavigator
都被绑定,即使您单击BindingNavigator.AddNewItem
按钮,也会调用BindingSource.AddNew()
方法,并且CurrencyManager
更新的位置会根据您新添加的项目的位置发生变化,BindingSource.Current
通过返回新添加的对象的实例,属性也会发生变化,或者否则,BindingSource.CurrencyManager.Current
也一样。
1 - 使用
BindingSource.Current
输入BindingSource.Current
对象,分配你的值,你就完成了!
2 - 订阅
BindingSource.AddingNew
活动
通过这样做,您可以通过 访问您的实例 BindingSource.AddignNewEventArgs
,并使用该AddignNewEventArgs.NewObject
属性对其进行类型转换并为其分配您自己的默认值。