BindingList<T>.AddNew Methode

Definition

Fügt der Auflistung ein neues Element hinzu.Adds a new item to the collection.

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

Gibt zurück

T

Das der Liste hinzugefügte Element.The item added to the list.

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

Das folgende Codebeispiel zeigt, wie Sie die AddNew-Methode verwenden.The following code example demonstrates how to use the AddNew method. BindingList<T>.BindingList<T>. Das komplette Beispiel finden Sie im BindingList<T> Thema Übersicht über die-Klasse.For the complete example, see the BindingList<T> class overview topic.

// 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

Hinweise

Die- AddNew Methode fügt der Auflistung ein neues Element hinzu, das durch die-Eigenschaft dargestellt wird Items .The AddNew method adds a new item to the collection represented by the Items property. Zum Hinzufügen eines neuen Elements wird die folgende Logik verwendet:To add a new item, the following logic is used:

  1. Das AddingNew Ereignis wird automatisch ausgelöst.The AddingNew event is automatically raised.

    Dieses Ereignis kann Programm gesteuert behandelt werden, um ein neues benutzerdefiniertes Element zu erstellen.This event can be programmatically handled to construct a new custom item. Dies wird im-Ereignishandler durch Festlegen der- NewObject Eigenschaft des- AddingNewEventArgs Parameters auf das neue Element erreicht.This is accomplished in the event handler by setting the NewObject property of the AddingNewEventArgs parameter to the new item.

    Andernfalls wird das neue Element automatisch über seinen öffentlichen Parameter losen Konstruktor erstellt.Otherwise, the new item is automatically created through its public parameterless constructor.

  2. Die Position des neuen Elements wird nachverfolgt, aber es wird nicht zur Liste hinzugefügt, bis eine der folgenden Bedingungen erfüllt ist:The position of the new item is tracked, but it is not added to the list until one of the following conditions are met:

    • Für das Element wird ein expliziter Commit durch einen-Befehl ausgeführt EndNew .The item is explicitly committed by a call to EndNew.

    • Für das Element wird implizit ein Commit durch einen anderen Vorgang ausgeführt, der den Inhalt der Liste geändert hat, z. b. das Einfügen oder Entfernen eines Elements.The item is implicitly committed by some other operation that changed the contents of the list, such as an insertion or removal of an item.

Im Gegensatz dazu bewirkt das Aufrufen der- CancelNew Methode vor dem Commit des Elements, dass das neue Element verworfen wird.In contrast, calling the CancelNew method before the item is committed will cause the new item to be discarded.

Diese Methode löst das-Ereignis aus, ListChanged Wenn für das neue Element ein Commit ausgeführt wird.This method raises the ListChanged event when the new item is committed.

Gilt für:

Weitere Informationen