BindingSource.AddNew Yöntem

Tanım

Temel alınan listeye yeni bir öğe ekler.

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

Döndürülenler

Object Oluşturulan ve listeye eklenen.

Uygulamalar

Özel durumlar

AllowNew özelliği false olarak ayarlanmıştır.

-veya-

Geçerli öğe türü için ortak parametresiz oluşturucu bulunamadı.

Örnekler

Aşağıdaki kod örneği, listeyi denetime BindingSource bağlamak için bir DataGridView bileşen kullanır. Olay işleyicisi tarafından AddingNew listeye yeni öğeler eklenir. Bu kod örneği, Nasıl yapılır: Windows Forms BindingSource ile Öğe Eklemeyi Özelleştirme bölümünde sağlanan daha büyük bir örneğin parçasıdır.

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

Açıklamalar

yöntemi, AddNew özelliği tarafından List temsil edilen temel listeye yeni bir öğe ekler. Bu yöntem aşağıdaki eylem dizisini ayarlar:

  1. Bekleyen EndEdit düzenleme işlemlerini işlemek için yöntemi otomatik olarak çağrılır.

  2. Olay AddingNew otomatik olarak oluşturulur. Bu olay, yeni öğeyi oluşturmak için program aracılığıyla işlenebilir. Bu, olay işleyicisinde parametresinin NewObjectSystem.ComponentModel.AddingNewEventArgs özelliği yeni öğeye ayarlanarak gerçekleştirilir. Olayda AddingNew oluşturulan yeni nesne, listede bulunan türle aynı türde olmalıdır, aksi takdirde bir özel durum oluşur.

    AddingNew Olay işlenmezse ve temel alınan liste bir IBindingListise, istek listenin IBindingList.AddNew yöntemine geçirilir. Temel alınan liste bir IBindingListdeğilse, öğe otomatik olarak ortak parametresiz oluşturucu aracılığıyla oluşturulur. Her iki durumda da, yeni öğe listenin sonuna eklenir.

  3. Veri kaynağı arabirimini uygulamadığı IEditableObject sürece yeni öğe hemen iç listeye eklenir. Bu durumda, yeni öğe için açık bir çağrı yapılana ICancelAddNew.EndNew kadar veya yeni bir liste işlemi başlatılana kadar işlenmez. İşlenmeden önce, yeni öğe çağrılarak CancelEditgeri alınabilir ve bu durumda yeni öğe atılır.

Bu yöntem olayı tetikler ListChanged .

Şunlara uygulanır

Ayrıca bkz.