Condividi tramite


BindingSource.AddNew Metodo

Definizione

Aggiunge un nuovo elemento all'elenco sottostante.

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

Restituisce

Oggetto Object creato e aggiunto all'elenco.

Implementazioni

Eccezioni

La proprietà AllowNew è impostata su false.

oppure

Impossibile trovare un costruttore pubblico senza parametri per il tipo di elemento corrente.

Esempio

Nell'esempio di codice seguente viene utilizzato un BindingSource componente per associare un elenco a un DataGridView controllo . I nuovi elementi vengono aggiunti all'elenco dal AddingNew gestore eventi. Questo esempio di codice fa parte di un esempio più ampio fornito in Procedura: Personalizzare l'aggiunta di elementi con BindingSource di Windows Form.

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

Commenti

Il AddNew metodo aggiunge un nuovo elemento all'elenco sottostante rappresentato dalla List proprietà . Questo metodo configura la serie di azioni seguente:

  1. Il EndEdit metodo viene chiamato automaticamente per eseguire il commit di eventuali operazioni di modifica in sospeso.

  2. L'evento AddingNew viene generato automaticamente. Questo evento può essere gestito a livello di codice per costruire il nuovo elemento. Questa operazione viene eseguita nel gestore eventi impostando la NewObject proprietà del System.ComponentModel.AddingNewEventArgs parametro sul nuovo elemento. Il nuovo oggetto creato nell'evento AddingNew deve essere dello stesso tipo del tipo contenuto nell'elenco o si verificherà un'eccezione.

    Se l'evento AddingNew non viene gestito e l'elenco sottostante è , IBindingListla richiesta viene passata al metodo dell'elenco IBindingList.AddNew . Se l'elenco sottostante non è un oggetto IBindingList, l'elemento viene creato automaticamente tramite il relativo costruttore pubblico senza parametri. In entrambi i casi, il nuovo elemento viene aggiunto alla fine dell'elenco.

  3. Il nuovo elemento viene aggiunto immediatamente all'elenco interno, a meno che l'origine dati non implementi l'interfaccia IEditableObject . In questo caso, il commit del nuovo elemento non viene eseguito finché non viene eseguita una chiamata esplicita a ICancelAddNew.EndNew o fino all'avvio di una nuova operazione di elenco. Prima di eseguire il commit, è possibile eseguire il rollback del nuovo elemento chiamando CancelEdit, nel qual caso il nuovo elemento viene rimosso.

Questo metodo genera l'evento ListChanged .

Si applica a

Vedi anche