Bagikan melalui


BindingList<T>.AddNew Metode

Definisi

Menambahkan item baru ke koleksi.

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

Mengembalikan

T

Item ditambahkan ke daftar.

Pengecualian

Properti AllowNew diatur ke false.

-atau-

Konstruktor tanpa parameter publik tidak dapat ditemukan untuk tipe item saat ini.

Contoh

Contoh kode berikut menunjukkan cara menggunakan AddNew metode . BindingList<T>. Untuk contoh lengkapnya, lihat BindingList<T> topik gambaran umum kelas.

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

Keterangan

Metode AddNew menambahkan item baru ke koleksi yang diwakili oleh Items properti . Untuk menambahkan item baru, logika berikut digunakan:

  1. Peristiwa AddingNew dinaikkan secara otomatis.

    Kejadian ini dapat ditangani secara terprogram untuk membuat item kustom baru. Ini dicapai di penanganan aktivitas dengan mengatur NewObject properti AddingNewEventArgs parameter ke item baru.

    Jika tidak, item baru secara otomatis dibuat melalui konstruktor tanpa parameter publiknya.

  2. Posisi item baru dilacak, tetapi tidak ditambahkan ke daftar hingga salah satu kondisi berikut terpenuhi:

    • Item secara eksplisit dilakukan oleh panggilan ke EndNew.

    • Item secara implisit diterapkan oleh beberapa operasi lain yang mengubah konten daftar, seperti penyisipan atau penghapusan item.

Sebaliknya, memanggil CancelNew metode sebelum item diterapkan akan menyebabkan item baru dibuang.

Metode ini memunculkan ListChanged peristiwa ketika item baru diterapkan.

Berlaku untuk

Lihat juga