Freigeben über


BindingSource.AddNew Methode

Definition

Fügt der zugrunde liegenden Liste ein neues Element hinzu.

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

Gibt zurück

Das Object erstellt und der Liste hinzugefügt wurde.

Implementiert

Ausnahmen

Die AllowNew-Eigenschaft ist auf false gesetzt.

- oder -

Für den aktuellen Elementtyp konnte kein öffentlicher parameterloser Konstruktor gefunden werden.

Beispiele

Im folgenden Codebeispiel wird eine BindingSource Komponente verwendet, um eine Liste an ein DataGridView Steuerelement zu binden. Neue Elemente werden der Liste vom AddingNew Ereignishandler hinzugefügt. Dieses Codebeispiel ist Teil eines größeren Beispiels, das in How to: Customize Item Addition with the Windows Forms BindingSource bereitgestellt wird.

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 zugrunde liegenden Liste, die durch die List Eigenschaft dargestellt wird, ein neues Element hinzu. Diese Methode richtet die folgende Reihe von Aktionen ein:

  1. Die EndEdit Methode wird automatisch aufgerufen, um ausstehende Bearbeitungsvorgänge zu übernehmen.

  2. Das AddingNew Ereignis wird automatisch ausgelöst. Dieses Ereignis kann programmgesteuert behandelt werden, um das neue Element zu erstellen. Dies wird im Ereignishandler erreicht, indem die NewObject Eigenschaft des System.ComponentModel.AddingNewEventArgs Parameters auf das neue Element festgelegt wird. Das im Ereignis erstellte AddingNew neue Objekt muss den gleichen Typ aufweisen wie der in der Liste enthaltene Typ, oder es tritt eine Ausnahme auf.

    Wenn das AddingNew Ereignis nicht behandelt wird und die zugrunde liegende Liste eine IBindingListist, wird die Anforderung an die Methode der Liste IBindingList.AddNew übergeben. Wenn es sich bei der zugrunde liegenden Liste nicht um ein IBindingListElement handelt, wird das Element automatisch über seinen öffentlichen parameterlosen Konstruktor erstellt. In beiden Fällen wird das neue Element am Ende der Liste hinzugefügt.

  3. Das neue Element wird sofort zur internen Liste hinzugefügt, es sei denn, die Datenquelle implementiert die IEditableObject Schnittstelle. In diesem Fall wird das neue Element erst zugesichert, wenn ein expliziter Aufruf ICancelAddNew.EndNew erfolgt oder bis ein neuer Listenvorgang initiiert wird. Bevor ein Commit ausgeführt wird, kann das neue Element durch Aufrufen CancelEditrückgängig gemacht werden. In diesem Fall wird das neue Element verworfen.

Diese Methode löst das ListChanged Ereignis aus.

Gilt für:

Weitere Informationen