BindingSource.AddNew Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dodaje nowy element do bazowej listy.
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
Zwraca
Element Object , który został utworzony i dodany do listy.
Implementuje
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
Poniższy przykład kodu używa BindingSource składnika do powiązania listy z kontrolką DataGridView . Nowe elementy są dodawane do listy przez program obsługi zdarzeń AddingNew . Ten przykład kodu jest częścią większego przykładu przedstawionego w temacie How to: Customize Item Add with the Windows Forms BindingSource (Dostosowywanie dodawania elementu za pomocą powiązania formularzy systemu Windows).
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
Uwagi
Metoda AddNew dodaje nowy element do bazowej listy reprezentowanej List przez właściwość . Ta metoda konfiguruje następującą serię akcji:
Metoda jest wywoływana EndEdit automatycznie, aby zatwierdzić wszystkie oczekujące operacje edycji.
Zdarzenie AddingNew jest automatycznie zgłaszane. To zdarzenie może być obsługiwane programowo w celu skonstruowania nowego elementu. Jest to realizowane w procedurze obsługi zdarzeń przez ustawienie NewObject właściwości parametru System.ComponentModel.AddingNewEventArgs na nowy element. Nowy obiekt utworzony w AddingNew zdarzeniu musi być tego samego typu co typ zawarty na liście lub wystąpi wyjątek.
AddingNew Jeśli zdarzenie nie jest obsługiwane, a lista bazowa to IBindingList, żądanie jest przekazywane do metody listyIBindingList.AddNew. Jeśli lista bazowa nie jest elementem IBindingList, element zostanie automatycznie utworzony za pomocą jego publicznego konstruktora bez parametrów. W obu przypadkach nowy element zostanie dodany na końcu listy.
Nowy element jest dodawany natychmiast do wewnętrznej listy, chyba że źródło danych implementuje IEditableObject interfejs. W takim przypadku nowy element nie zostanie zatwierdzony, dopóki nie zostanie wykonane jawne wywołanie ICancelAddNew.EndNew polecenia lub dopóki nie zostanie zainicjowana nowa operacja listy. Przed jego zatwierdzaniem nowy element można wycofać, wywołując metodę CancelEdit, w tym przypadku nowy element zostanie odrzucony.
Ta metoda zgłasza ListChanged zdarzenie.