BindingSource.AddNew Methode

Definition

Fügt der zugrunde liegenden Liste ein neues Element hinzu.Adds a new item to the underlying list.

public:
 virtual System::Object ^ AddNew();
public virtual object AddNew ();
abstract member AddNew : unit -> obj
override this.AddNew : unit -> obj
Public Overridable Function AddNew () As Object

Gibt zurück

Das erstellte und der Liste hinzugefügte Object.The Object that was created and added to the list.

Implementiert

Ausnahmen

Die AllowNew-Eigenschaft ist auf false festgelegt.The AllowNew property is set to false.

- oder --or- Für den aktuellen Elementtyp konnte kein öffentlicher parameterloser Konstruktor gefunden werden.A public parameterless constructor could not be found for the current item type.

Beispiele

Im folgenden Codebeispiel wird eine BindingSource -Komponente verwendet, um eine Liste DataGridView an ein-Steuerelement zu binden.The following code example uses a BindingSource component to bind a list to a DataGridView control. Neue Elemente werden der Liste durch den AddingNew -Ereignishandler hinzugefügt.New items are added to the list by the AddingNew event handler. Dieses Codebeispiel ist Teil eines größeren Beispiels, das unter Vorgehensweise: Anpassen des Hinzufügens von Elementen mit demWindows Forms BindingSource.This code example is part of a larger example provided in How to: Customize Item Addition with the Windows Forms BindingSource.

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

Hinweise

Die AddNew -Methode fügt der durch die List -Eigenschaft dargestellten zugrunde liegenden Liste ein neues Element hinzu.The AddNew method adds a new item to the underlying list represented by the List property. Diese Methode richtet die folgenden Aktionsreihe ein:This method sets up the following series of actions:

  1. Die EndEdit -Methode wird automatisch aufgerufen, um einen Commit für alle ausstehenden Bearbeitungsvorgänge durchzusetzen.The EndEdit method is automatically called to commit any pending edit operations.

  2. Das AddingNew Ereignis wird automatisch ausgelöst.The AddingNew event is automatically raised. Dieses Ereignis kann Programm gesteuert behandelt werden, um das neue Element zu erstellen.This event can be programmatically handled to construct the new item. Dies wird im-Ereignishandler durch Festlegen der NewObject -Eigenschaft System.ComponentModel.AddingNewEventArgs des-Parameters auf das neue Element erreicht.This is accomplished in the event handler by setting the NewObject property of the System.ComponentModel.AddingNewEventArgs parameter to the new item. Das im AddingNew Ereignis erstellte neue-Objekt muss denselben Typ aufweisen wie der in der Liste enthaltene Typ, oder es tritt eine Ausnahme auf.The new object created in the AddingNew event must be of the same type as the type contained in the list or an exception will occur.

    Wenn das AddingNew -Ereignis nicht behandelt wird und die zugrunde liegende Liste eine IBindingListist, wird die Anforderung an die- IBindingList.AddNew Methode der Liste weitergeleitet.If the AddingNew event is not handled, and the underlying list is an IBindingList, then the request is passed to the list's IBindingList.AddNew method. Wenn die zugrunde liegende Liste kein IBindingListist, wird das Element automatisch über seinen öffentlichen Parameter losen Konstruktor erstellt.If the underlying list is not an IBindingList, the item is automatically created through its public parameterless constructor. In beiden Fällen wird das neue Element am Ende der Liste hinzugefügt.In either case, the new item is added to the end of the list.

  3. Das neue Element wird sofort der internen Liste hinzugefügt, es sei denn, die IEditableObject Datenquelle implementiert die-Schnittstelle.The new item is added immediately to the internal list unless the data source implements the IEditableObject interface. In diesem Fall wird kein Commit für ICancelAddNew.EndNew das neue Element ausgeführt, bis ein expliziter-Vorgang ausgeführt wird oder bis ein neuer Listen Vorgang initiiert wird.In this case, the new item is not committed until an explicit call to ICancelAddNew.EndNew is made or until a new list operation is initiated. Bevor ein Commit ausgeführt wird, kann ein Rollback für das neue Element CancelEditdurch den Aufruf von durchgeführt werden. in diesem Fall wird das neue Element verworfen.Before it is committed, the new item can be rolled back by calling CancelEdit, in which case the new item is discarded.

Diese Methode löst das ListChanged -Ereignis aus.This method raises the ListChanged event.

Gilt für:

Siehe auch