Udostępnij za pośrednictwem


BindingList<T>.AddNew Metoda

Definicja

Dodaje nowy element do kolekcji.

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

Zwraca

T

Element dodany do listy.

Wyjątki

Właściwość AllowNew ma ustawioną wartość false.

-lub-

Nie można odnaleźć publicznego konstruktora bez parametrów dla bieżącego typu elementu.

Przykłady

W poniższym przykładzie kodu pokazano, jak używać AddNew metody . BindingList<T>. Aby zapoznać się z kompletnym przykładem, zobacz BindingList<T> temat omówienie klasy.

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

Uwagi

Metoda AddNew dodaje nowy element do kolekcji reprezentowanej Items przez właściwość . Aby dodać nowy element, używana jest następująca logika:

  1. Zdarzenie AddingNew jest automatycznie wywoływane.

    To zdarzenie może być obsługiwane programowo w celu utworzenia nowego elementu niestandardowego. Jest to realizowane w procedurze obsługi zdarzeń przez ustawienie NewObject właściwości parametru AddingNewEventArgs na nowy element.

    W przeciwnym razie nowy element zostanie automatycznie utworzony za pośrednictwem jego publicznego konstruktora bez parametrów.

  2. Pozycja nowego elementu jest śledzona, ale nie jest dodawana do listy do momentu spełnienia jednego z następujących warunków:

    • Element jest jawnie zatwierdzany przez wywołanie metody EndNew.

    • Element jest niejawnie zatwierdzany przez inną operację, która zmieniła zawartość listy, na przykład wstawienie lub usunięcie elementu.

Natomiast wywołanie CancelNew metody przed zatwierdzeniu elementu spowoduje odrzucenie nowego elementu.

Ta metoda zgłasza ListChanged zdarzenie po zatwierdzeniu nowego elementu.

Dotyczy

Zobacz też