0

を介して新しいアイテムを追加する場合、新しいアイテムのBindingNavigatorいくつかのフィールドに以前に選択したアイテムの値を入力するにはどうすればよいですか?

注:BindingNavigatorAddNewItem.Clickでは、 にはBindingNavigatorすでに新しい項目がロードされており、コントロールはデフォルト値にクリアされています。

4

1 に答える 1

2

BindingNavigatorデータ ソースにバインドする必要があります。たとえば、 と同じものを共有するにはDataGridView、 を使用する必要がありますBindingSource。したがって、追加されたアイテムは実際に基になる に追加されますBindingSource.DataSource

問題を解決するには 2 つの方法があります。

と の両方がバインドされると、ボタンをクリックしてもDataGridViewメソッドが呼び出され、新しく追加されたアイテムの位置に合わせて更新の位置が変更され、新しく追加されたオブジェクトのインスタンスを返すことでプロパティも変更されます。それ以外の場合、は同じことを行います。BindingNavigatorBindingNavigator.AddNewItemBindingSource.AddNew()CurrencyManagerBindingSource.CurrentBindingSource.CurrencyManager.Current

1 - を使用BindingSource.Current

オブジェクトを型キャストし、BindingSource.Current値を代入すれば完了です!

2BindingSource.AddingNew -イベントにサブスクライブする

そうすることで、 を介してインスタンスにアクセスし BindingSource.AddignNewEventArgs、プロパティを使用しAddignNewEventArgs.NewObjectて型キャストし、独自のデフォルト値を割り当てることができます。

于 2014-04-30T00:43:40.387 に答える