BindingSource.AddNew メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
基になるリストに新しい項目を追加します。
public:
virtual System::Object ^ AddNew();
public virtual object AddNew();
public virtual object? AddNew();
abstract member AddNew : unit -> obj
override this.AddNew : unit -> obj
Public Overridable Function AddNew () As Object
戻り値
作成されてリストに追加された Object 。
実装
例外
例
次のコード例では、 BindingSource コンポーネントを使用してリストを DataGridView コントロールにバインドします。 新しい項目は、 AddingNew イベント ハンドラーによって一覧に追加されます。 このコード例は、「 方法: Windows フォーム バインド ソースを使用して項目の追加をカスタマイズする」で提供されるより大きな例の一部です。
private:
void OnMainFormLoad(Object^ sender, EventArgs^ e)
{
// Add a DemoCustomer to cause a row to be displayed.
this->customersBindingSource->AddNew();
// Bind the BindingSource to the DataGridView
// control's DataSource.
this->customersDataGridView->DataSource =
this->customersBindingSource;
}
private void Form1_Load(System.Object sender, System.EventArgs e)
{
// Add a DemoCustomer to cause a row to be displayed.
this.customersBindingSource.AddNew();
// Bind the BindingSource to the DataGridView
// control's DataSource.
this.customersDataGridView.DataSource =
this.customersBindingSource;
}
Private Sub Form1_Load( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs)
' Add a DemoCustomer to cause a row to be displayed.
Me.customersBindingSource.AddNew()
' Bind the BindingSource to the DataGridView
' control's DataSource.
Me.customersDataGridView.DataSource = Me.customersBindingSource
End Sub
注釈
AddNew メソッドは、List プロパティによって表される基になるリストに新しい項目を追加します。 このメソッドは、次の一連のアクションを設定します。
EndEdit メソッドは、保留中の編集操作をコミットするために自動的に呼び出されます。
AddingNew イベントは自動的に発生します。 このイベントは、プログラムによって処理して新しい項目を構築できます。 これは、イベント ハンドラーで、NewObject パラメーターのSystem.ComponentModel.AddingNewEventArgs プロパティを新しい項目に設定することによって実現されます。 AddingNew イベントで作成される新しいオブジェクトは、リストに含まれる型と同じ型である必要があります。または、例外が発生します。
AddingNew イベントが処理されず、基になるリストがIBindingListの場合、要求はリストの IBindingList.AddNew メソッドに渡されます。 基になるリストが IBindingListでない場合、項目は、そのパブリック パラメーターなしのコンストラクターを使用して自動的に作成されます。 どちらの場合も、新しい項目がリストの末尾に追加されます。
データ ソースが IEditableObject インターフェイスを実装しない限り、新しい項目は内部リストにすぐに追加されます。 この場合、 ICancelAddNew.EndNew の明示的な呼び出しが行われるまで、または新しいリスト操作が開始されるまで、新しい項目はコミットされません。 コミットする前に、 CancelEditを呼び出すことによって新しい項目をロールバックできます。その場合、新しい項目は破棄されます。
このメソッドは、 ListChanged イベントを発生させます。