BindingList<T>.AddNew Metodo

Definizione

Aggiunge un nuovo elemento alla raccolta.

public:
 T AddNew();
public T AddNew ();
member this.AddNew : unit -> 'T
Public Function AddNew () As T

Restituisce

T

Elemento aggiunto all'elenco.

Eccezioni

La proprietà AllowNew è impostata su false.

-oppure-

Non è possibile trovare un costruttore senza parametri pubblico per il tipo di elemento corrente.

Esempio

Nell'esempio di codice riportato di seguito viene illustrato come utilizzare il metodo AddNew. BindingList<T>. Per l'esempio completo, vedere l'argomento panoramica della BindingList<T> classe.

// Add the new part unless the part number contains
// spaces. In that case cancel the add.
private void button1_Click(object sender, EventArgs e)
{
    Part newPart = listOfParts.AddNew();

    if (newPart.PartName.Contains(" "))
    {
        MessageBox.Show("Part names cannot contain spaces.");
        listOfParts.CancelNew(listOfParts.IndexOf(newPart));
    }
    else
    {
        textBox2.Text = randomNumber.Next(9999).ToString();
        textBox1.Text = "Enter part name";
    }
}
' Add the new part unless the part number contains
' spaces. In that case cancel the add.
Private Sub button1_Click(ByVal sender As Object, _
    ByVal e As EventArgs) Handles button1.Click

    Dim newPart As Part = listOfParts.AddNew()

    If newPart.PartName.Contains(" ") Then
        MessageBox.Show("Part names cannot contain spaces.")
        listOfParts.CancelNew(listOfParts.IndexOf(newPart))
    Else
        textBox2.Text = randomNumber.Next(9999).ToString()
        textBox1.Text = "Enter part name"
    End If

End Sub

Commenti

Il AddNew metodo aggiunge un nuovo elemento all'insieme rappresentato dalla Items proprietà . Per aggiungere un nuovo elemento, viene usata la logica seguente:

  1. L'evento AddingNew viene generato automaticamente.

    Questo evento può essere gestito a livello di codice per costruire un nuovo elemento personalizzato. Questa operazione viene eseguita nel gestore eventi impostando la NewObject proprietà del AddingNewEventArgs parametro sul nuovo elemento.

    In caso contrario, il nuovo elemento viene creato automaticamente tramite il relativo costruttore pubblico senza parametri.

  2. La posizione del nuovo elemento viene rilevata, ma non viene aggiunta all'elenco fino a quando non viene soddisfatta una delle condizioni seguenti:

    • L'elemento viene eseguito in modo esplicito tramite una chiamata a EndNew.

    • L'elemento viene eseguito in modo implicito da un'altra operazione che ha modificato il contenuto dell'elenco, ad esempio un inserimento o una rimozione di un elemento.

Al contrario, la chiamata al metodo prima del CancelNew commit dell'elemento causerà l'eliminazione del nuovo elemento.

Questo metodo genera l'evento ListChanged quando viene eseguito il commit del nuovo elemento.

Si applica a

Vedi anche