Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# BindingNavigator复制到AddNewItem_C#_Winforms_Data Binding_.net 4.5_Bindingnavigator - Fatal编程技术网

C# BindingNavigator复制到AddNewItem

C# BindingNavigator复制到AddNewItem,c#,winforms,data-binding,.net-4.5,bindingnavigator,C#,Winforms,Data Binding,.net 4.5,Bindingnavigator,当通过BindingNavigator添加新项目时,如何使用以前所选项目的值填充新项目的多个字段 注意:在BindingNavigator添加新项上。单击,BindingNavigator已加载新项,并将控件清除为默认值。必须将绑定到数据源。例如,要使其与DataGridView共享相同的内容,它需要使用。因此,所添加的项实际上已添加到您的基础项中 有两种方法可以解决你的问题 绑定和BindingNavigator后,即使您单击按钮,也会调用方法,并且更新的位置会随着新添加项的位置而改变,Bin

当通过
BindingNavigator
添加新项目时,如何使用以前所选项目的值填充新项目的多个字段

注意:在
BindingNavigator添加新项上。单击
BindingNavigator
已加载新项,并将控件清除为默认值。

必须将绑定到数据源。例如,要使其与
DataGridView
共享相同的内容,它需要使用。因此,所添加的项实际上已添加到您的基础项中

有两种方法可以解决你的问题

绑定和
BindingNavigator
后,即使您单击按钮,也会调用方法,并且更新的位置会随着新添加项的位置而改变,
BindingSource.Current
属性也会通过返回新添加对象的实例而改变,否则,BindingSource.CurrencyManager.Current
也执行相同的操作

1-使用

键入cast
BindingSource.Current
对象,分配值,就完成了

2-订阅活动


通过这样做,您可以通过访问实例,并使用属性键入cast并为其指定您自己的默认值。

以下结果将导致
InvalidCastException
SomeDataSet.HelloWorldRow newRow(SomeDataSet.HelloWorldRow)HelloWorldBindingSource.Current
这似乎是正确的答案(BindingSource.AddingNew
事件)。但是,我似乎无法使用正确的类型填充
AddingNewEventArgs.NewObject
。我为该问题创建了一个单独的问题: